[12501] | 1 | <?php |
---|
| 2 | /* |
---|
| 3 | Plugin Name: Thumb Cropper |
---|
| 4 | Version: 0.4 |
---|
| 5 | Description: enables to customize image thumbnails |
---|
| 6 | Plugin URI: http://fr.piwigo.org/ext/extension_view.php?eid=581 |
---|
| 7 | */ |
---|
| 8 | if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!'); |
---|
| 9 | include_once(PHPWG_ROOT_PATH.'include/functions_picture.inc.php'); |
---|
| 10 | include_once(PHPWG_ROOT_PATH.'admin/include/functions_upload.inc.php'); |
---|
| 11 | |
---|
| 12 | add_event_handler('ws_add_methods', 'add_tc_method'); |
---|
| 13 | add_event_handler('loc_begin_admin', 'tc_init_prefilter', 50); |
---|
| 14 | |
---|
| 15 | function add_tc_method($arr) { |
---|
| 16 | include_once('ws_functions.inc.php'); |
---|
| 17 | } |
---|
| 18 | |
---|
| 19 | function tc_init_prefilter() { |
---|
| 20 | global $template; |
---|
| 21 | global $row,$conf; |
---|
| 22 | |
---|
| 23 | if (script_basename() != 'admin') |
---|
| 24 | return; |
---|
| 25 | if (isset($_GET['image_id'])) { |
---|
| 26 | $query = ' |
---|
| 27 | SELECT * |
---|
| 28 | FROM '.IMAGES_TABLE.' |
---|
| 29 | WHERE id = '.$_GET['image_id'].' |
---|
| 30 | ;'; |
---|
| 31 | $row = pwg_db_fetch_assoc(pwg_query($query)); |
---|
| 32 | $thumb_data = array( |
---|
| 33 | 'x1' => 0, |
---|
| 34 | 'y1' => 0, |
---|
| 35 | 'x2' => $row['width'], |
---|
| 36 | 'y2' => $row['height'], |
---|
| 37 | 'width' => $conf['upload_form_thumb_maxwidth'], |
---|
| 38 | 'height' => $conf['upload_form_thumb_maxheight'], |
---|
| 39 | ); |
---|
| 40 | |
---|
| 41 | $template->assign(array( |
---|
| 42 | 'IMG_SRC' => get_image_url($row), |
---|
| 43 | 'IMG_WIDTH' => $row['width'], |
---|
| 44 | 'IMG_HEIGHT' => $row['height'], |
---|
| 45 | 'IMG_ID' => $_GET['image_id'], |
---|
| 46 | 'thumb_data' => $thumb_data, |
---|
| 47 | 'TC_PWG_TOKEN' => get_pwg_token() |
---|
| 48 | )); |
---|
| 49 | $template->set_prefilter('picture_modify','tc_prefilter'); |
---|
| 50 | load_language('plugin.lang', dirname(__FILE__).'/'); |
---|
| 51 | } |
---|
| 52 | } |
---|
| 53 | |
---|
| 54 | function tc_prefilter($content,&$smarty) { |
---|
| 55 | |
---|
| 56 | $pattern = '#(<ul class="categoryActions">.*?)</ul>#s'; |
---|
| 57 | |
---|
| 58 | $replacement = '$1'. |
---|
| 59 | '<li><a href="#thumbcropper" class="cbinline" title="{\'Edit thumbnail\'|@translate}">'. |
---|
| 60 | '<img src="plugins/thumbCropper/thumbcropper.png" alt="{\'Edit thumbnail\'|@translate}">'. |
---|
| 61 | '</a></li></ul>'. |
---|
| 62 | '{include file="'.str_replace("\\","/",(dirname(__FILE__))).'/thumbcropper.tpl"}'; |
---|
| 63 | |
---|
| 64 | return preg_replace($pattern, $replacement, $content); |
---|
| 65 | } |
---|
| 66 | |
---|
| 67 | ?> |
---|