source: extensions/Crop_Image/main.inc.php @ 22854

Last change on this file since 22854 was 22854, checked in by Chillexistence, 11 years ago

Fix Path to Plugin due to the directory name Piwigo assigned it.

File size: 3.1 KB
Line 
1<?php
2/*
3Plugin Name: Crop Image
4Version: 2.5.c
5Description: Enables to Crop Images already uploaded to the gallery, basic functionality.  Tested with v2.5.1, v2.4.6
6Plugin URI: http://piwigo.org/ext/extension_view.php?eid=700
7Author: Chillexistence
8Author URI: http://piwigo.org
9*/
10if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
11define('CROPIMAGE_PATH',    PHPWG_PLUGINS_PATH . basename(dirname(__FILE__)));
12
13add_event_handler('init', 'cropImage_init' );
14add_event_handler('tabsheet_before_select','crop_image_add_tab', 50, 2);
15
16function crop_image_add_tab($sheets, $id)
17{ 
18        $image_id = isset($_GET['image_id'])? $_GET['image_id'] : '';
19 
20        if ($id == 'photo')
21  {
22    $sheets['crop'] = array(
23      'caption' => l10n('Crop'),
24      'url' => get_root_url().'admin.php?page=plugin-Crop_Image-'.$image_id,
25      );
26  }
27 
28  return $sheets;
29}
30               
31function cropImage_init()
32{
33  global $conf, $pwg_loaded_plugins;           
34  if (!defined('PWG_HELP') and !defined('IN_ADMIN') and is_admin())
35  {
36                // Add an event handler for a prefilter on picture.php pages
37                add_event_handler('loc_begin_picture', 'cropImage_set_prefilter_add_to_pic_info', 55 );
38        }
39}       
40       
41////////////////////////////////////////////////////////////////////////////////
42// Add the prefilter for the Crop Link on the template on picture.php
43////////////////////////////////////////////////////////////////////////////////
44function cropImage_set_prefilter_add_to_pic_info()
45{
46        global $template, $conf, $user, $page;
47       
48        $url_admin =
49    get_root_url().'admin.php?page=plugin-Crop_Image-'.$page['image_id']
50    .(isset($page['category']) ? '&amp;cat_id='.$page['category']['id'] : '')
51    ;
52        $template->set_prefilter('picture', 'cropImage_add_button');
53       
54        $template->func_combine_css(array('path' => CROPIMAGE_PATH.'/css/cropimage_toolbar_buttons.css'));
55       
56        //Get the Theme to display the correct icon style
57        if ( in_array($user['theme'], array('Sylvia','sylvia')) )
58        {
59                 $ButtonTheme = "sylvia";
60        }
61        elseif ( in_array($user['theme'], array('elegant')) )
62        {
63                 $ButtonTheme = "elegant";
64        }
65        elseif ( in_array($user['theme'], array('clear')) )
66        {
67                 $ButtonTheme = "clear";
68        }
69        elseif ( in_array($user['theme'], array('dark')) )
70        {
71                 $ButtonTheme = "dark";
72        }
73        else
74        {
75                 $ButtonTheme = "clear";
76        }
77       
78        $template->assign(
79    array(
80      'U_CROPIMAGE' => $url_admin,
81                        'U_CROPIMAGE_THEME' => $ButtonTheme,
82      )
83    );
84}       
85////////////////////////////////////////////////////////////////////////////////
86// Insert the template for the Crop Link on picture.php
87////////////////////////////////////////////////////////////////////////////////
88function cropImage_add_button($content)
89{
90        // Add the information after imageInfoTable so before everything else like author and date.
91        $search = '{strip}{if isset($U_CADDIE)}{*caddie management BEGIN*}';
92       
93        $replacement = '
94        <a class="pwg-state-default pwg-button" href="{$U_CROPIMAGE}" title="Crop Image" rel="nofollow">
95         <span class="ci-icon ci-icon-cropimage-{$U_CROPIMAGE_THEME}"> </span><span class="pwg-button-text">Crop Image</span>
96  </a>
97        ' . $search;
98
99        return str_replace($search, $replacement, $content);
100}
101       
102?>
Note: See TracBrowser for help on using the repository browser.