source: extensions/Autosize/autosize.inc.php @ 8940

Last change on this file since 8940 was 8940, checked in by cljosse, 13 years ago

[Autosize][beta] bug on template


File size: 14.3 KB
Line 
1<?php
2// +-----------------------------------------------------------------------+
3// | Piwigo - a PHP based picture gallery                                  |
4// | Autosize                                                              |
5// +-----------------------------------------------------------------------+
6// | Copyright(C) 2010      cljosse                                        |
7// +-----------------------------------------------------------------------+
8// | This program is free software; you can redistribute it and/or modify  |
9// | it under the terms of the GNU General Public License as published by  |
10// | the Free Software Foundation                                          |
11// |                                                                       |
12// | This program is distributed in the hope that it will be useful, but   |
13// | WITHOUT ANY WARRANTY; without even the implied warranty of            |
14// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU      |
15// | General Public License for more details.                              |
16// |                                                                       |
17// | You should have received a copy of the GNU General Public License     |
18// | along with this program; if not, write to the Free Software           |
19// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
20// | USA.                                                                  |
21// +-----------------------------------------------------------------------+
22if (!defined('AUTOSIZE_PATH')) 
23define(
24  'AUTOSIZE_PATH',
25   PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/'
26);
27if (!defined('ROOT_URL')) 
28define(  'ROOT_URL',  get_root_url().'/' );
29
30$AUTOSIZE_PATH_ABS=str_replace('\\','/',dirname(__FILE__) );
31if (!defined('AUTOSIZE_PATH_ABS')) 
32define(
33  'AUTOSIZE_PATH_ABS',   $AUTOSIZE_PATH_ABS."/"
34);
35
36
37
38class autosize_controler {
39 //============================================================
40 /*
41  *  cl_autosize_script_1
42 */
43 static public function cl_autosize_script_1()
44        {
45                global  $template,$user,$conf,$picture ,$page, $cl_plugin ;
46                if(isset($page['body_id']) &&   $page['body_id'] == 'theAdminPage' ) return ; 
47                $ma_page=isset($page['body_id'])?$page['body_id']:"" ;
48                if ($ma_page=='thePiwiShackControllerPage') return ;
49
50            $my_path = dirname(__FILE__).'/';
51                $template->set_filenames(array('autosize_init'=>$my_path. "template/conflit.tpl" ) );   
52                $DEBUG = isset($conf['cl_debug']) ? $conf['cl_debug'] : "false" ; 
53                $autosize_parametres =   cl_autosize_Get_Options() ;                   
54                $theme=$user['theme'];
55                $url = get_root_url();   
56        $AUTOSIZE_PATH=AUTOSIZE_PATH;   
57     
58
59                $template->assign(
60                                                array(   
61                                                'autosize_parametres' => $autosize_parametres ,
62                                                'cl_plugins' => $cl_plugin ,
63                                                'cl_version' => $cl_plugin['version'] ,
64                                                'name' => $cl_plugin['name'] ,                                           
65                                                'theme' => $theme  ,
66                                                'DEBUG' => $DEBUG   ,
67                         'AUTOSIZE_PATH' => AUTOSIZE_PATH  ,
68                         'AUTOSIZE_PATH_ABS' => AUTOSIZE_PATH_ABS,
69                         'ROOT_URL' => $url  ,
70                                                )
71                                                 );
72 
73                return $template->parse( 'autosize_init', false);
74        }// function cl_autosize_script_1
75 //===========================================================
76 /*
77  * cl_autosize_script_2
78 */
79 static public function cl_autosize_script_2()
80 {
81           global  $template,$user,$conf,$picture ,$page, $cl_plugin,$known_script ;
82                        $my_path = dirname(__FILE__).'/';
83                        $DEBUG =  isset($conf['cl_debug']) ? $conf['cl_debug'] : "false"  ; 
84                        $ma_page=isset($page['body_id'])?$page['body_id']:"" ;
85                        $theme=$user['theme'];
86                        if ($ma_page=='thePiwiShackControllerPage') return ;
87                       
88                        $template->assign(
89                                        array(
90                                        'cl_version' => $cl_plugin['version'] ,
91                                        'name' => $cl_plugin['name'] ,
92                                        'ma_page' =>    $ma_page,
93                                       
94                                        'theme' => $theme  ,
95                                        'DEBUG' => $DEBUG   ,
96                                        'AUTOSIZE_PATH' => AUTOSIZE_PATH
97                                        )
98                                                );
99                                                 
100                        $autoscript="<script type='text/javascript'>
101                        /* cl_autosize_script_2 */
102                        if (typeof (save_framework) == 'function')
103                           save_framework('".$ma_page."');
104                        </script>";
105            $autoscript .="<input id='ret_autosize'  type='hidden' value='' />";
106            $autoscript .="<input id='src_img_h'  type='hidden' value='' />";
107            $autoscript .="<input id='src_img_w'   type='hidden' value='' />";
108                $template->append('footer_elements',$autoscript); 
109                return ; 
110 }// function cl_autosize_script_2
111
112        //================================================================
113        /*
114        * cl_autosize_admin
115        */
116        static public function cl_autosize_admin($menu)
117                {
118                global  $lang ;
119                array_push($menu, array('NAME' => 'Autosize',
120                'URL' => get_admin_plugin_menu_link(AUTOSIZE_PATH . 'admin/admin_autosize.php')));
121                return $menu;
122        } //function cl_autosize_admin
123
124    //===============================================================
125        /*
126        *
127        */     
128        static public function cl_autosize_affiche()
129        {
130                global $user, $picture, $template,$page,$known_script;
131                global $content, $element_info;   
132                global $infos_message,$erreur_message;
133                global  $conf,$lang ,$user,$userdata;
134
135                load_language('lang', AUTOSIZE_PATH);
136                $my_path = dirname(__FILE__).'/';
137                 if (isset( $page['body_id']) && $page['body_id']=='thePicturePage'  ) {
138                        if ( isset($picture['current'])){       
139                                $autosize_parametres = cl_autosize_Get_Options();
140                                include (AUTOSIZE_PATH."include/affiche.php"); 
141                               
142                                if($autosize_parametres->check_icon_v == 'on'){                         
143                                                $template->assign('cl_autosize_button', 
144                                                array(  'cl_autosize_info' => 'cl_autosize_info' ,
145                                                                'cl_autosize_info_2' => 'cl_autosize_info_2' ,   
146                                                                'URL' => $_SERVER['REQUEST_URI'] ,
147                                                                'ICON2' => AUTOSIZE_PATH . 'icons/button-maximize.png',
148                                                                'ICON' => AUTOSIZE_PATH . 'icons/button-minimize.png'
149                                                                )
150
151                                                        ); 
152                                        $template->set_filenames(array('cl_bp' => $my_path. 'template/picture.tpl'));
153                                        $template->concat('PLUGIN_PICTURE_ACTIONS', $template->parse('cl_bp', true));
154                                }
155                                 $template->set_filenames(
156                                                array('autosize_content'=> $my_path.'template/autosize.tpl')
157                                        );
158                                                                                                       
159                                return $template->parse( 'autosize_content', false);
160                                  }
161                }
162
163        } //public function cl_autosize_affiche
164        //===============================================================
165                /*
166        *
167        */
168        static public function cl_autosize_aff_infos_plus()
169                {
170                 global $template,$infos_message,$erreur_message, $user ;
171                 global  $conf,$lang ;
172       
173                 //==============================================================
174                  if (isset($erreur_message))
175                                {       
176                                if ($erreur_message <> "")
177                                        {
178                                                $erreur_message=str_replace("\n",'<br />',$erreur_message) ;
179                                                $template->assign('errors',$erreur_message);
180                                                $erreur_message="";
181                                        }
182                                }
183                  if (isset($infos_message))
184                                {       
185               
186                                if ($infos_message <> "")
187                                        {
188                                                $infos_message=str_replace("\n",'<br />',$infos_message) ;
189                                                $template->assign('infos',$infos_message);
190                                                $infos_message="";
191                                        }
192                                }
193                                //=============================================================
194                return;         
195               
196                } // function cl_autosize_aff_infos_plus
197        //===============================================================
198        /*
199         *
200        */
201        static public function cl_ajuste_data($content){
202                global  $template,$user,$conf,$picture ;
203                $my_path = realpath(AUTOSIZE_PATH .'/');
204                $userdata=$user;
205                $fields = array( 'maxwidth', 'maxheight' );
206         
207                $ThePicture = $template->get_template_vars('current'); 
208                $data = array();
209         return $content;
210
211                $data['maxwidth'] = '1200';
212                $data['maxheight'] ='250';
213                $data['user_id'] = $userdata['id'];
214                foreach ($fields as $field)
215                {
216                        if (isset($_POST[$field]))
217                        {
218                                $data[$field] = $_POST[$field];
219                        }
220                }
221       
222                if($data['maxwidth'] != "" )
223                        {
224                        $picture['current']['scaled_width']=$data['maxwidth'];
225                        $picture['current']['scaled_height']=$data['maxheight'];
226                        mass_updates(USER_INFOS_TABLE,
227                                        array('primary' => array('user_id'), 'update' => $fields),
228                                        array($data)); 
229                        }
230                 
231                        return $content;                                                                                 
232                 }
233
234} // class
235
236
237        /*
238        *
239        */
240 function cl_autosize_Get_Options()
241  {
242                global $conf,$autosize_parametres; 
243                $autosize_parametres =  unserialize($conf['cl_autosize']);
244                $autosize_parametres =  cl_autosize_Set_Options();
245                return $autosize_parametres;
246  }
247        /*
248        *
249        */
250function cl_autosize_Set_Options()
251  {
252
253  global $autosize_parametres;
254//=============================================================================
255$my_para=$autosize_parametres;
256
257$my_para->query =(isset($_POST['query'])) ? $_POST['query'] : ((isset($my_para->query )) ? $my_para->query : 'Qt' ) ;
258$my_para->type=(isset($_POST['type']))? $_POST['type']: ((isset($my_para->type)) ? $my_para->type:  'Ty') ;
259
260$my_para->webmaster_height =(isset($_POST['webmaster_height'])) ? $_POST['webmaster_height'] : ((isset($my_para->webmaster_height )) ? $my_para->webmaster_height : '100%' ) ;
261$my_para->webmaster_width=(isset($_POST['webmaster_width']))? $_POST['webmaster_width']: ((isset($my_para->webmaster_width)) ? $my_para->webmaster_width:  '90%') ;
262
263$my_para->admin_height =(isset($_POST['admin_height'])) ? $_POST['admin_height'] : ((isset($my_para->admin_height )) ? $my_para->admin_height : '90%' ) ;
264$my_para->admin_width=(isset($_POST['admin_width']))? $_POST['admin_width']: ((isset($my_para->admin_width)) ? $my_para->admin_width:  '90%') ;
265
266$my_para->generic_height =(isset($_POST['generic_height'])) ? $_POST['generic_height'] : ((isset($my_para->generic_height )) ? $my_para->generic_height : '100%' ) ;
267$my_para->generic_width=(isset($_POST['generic_width']))? $_POST['generic_width']: ((isset($my_para->generic_width)) ? $my_para->generic_width:  '90%') ;
268
269$my_para->guest_height =(isset($_POST['guest_height'])) ? $_POST['guest_height'] : ((isset($my_para->guest_height )) ? $my_para->guest_height : '100%' ) ;
270$my_para->guest_width=(isset($_POST['guest_width']))? $_POST['guest_width']: ((isset($my_para->guest_width)) ? $my_para->guest_width:  '90%') ;
271
272$my_para->normal_height =(isset($_POST['normal_height'])) ? $_POST['normal_height'] : ((isset($my_para->normal_height )) ? $my_para->normal_height : '100%' ) ;
273$my_para->normal_width=(isset($_POST['normal_width']))? $_POST['normal_width']: ((isset($my_para->normal_width)) ? $my_para->normal_width:  '90%') ;
274
275
276$my_para->mini_height =(isset($_POST['mini_height'])) ? $_POST['mini_height'] : ((isset($my_para->mini_height )) ? $my_para->mini_height : '150' ) ;
277$my_para->mini_width=(isset($_POST['mini_width']))? $_POST['mini_width']: ((isset($my_para->mini_width)) ? $my_para->mini_width:  '300') ;
278
279$my_para->mini_height2 =(isset($_POST['mini_height2'])) ? $_POST['mini_height2'] : ((isset($my_para->mini_height2 )) ? $my_para->mini_height2 : '150' ) ;
280$my_para->mini_width2=(isset($_POST['mini_width2']))? $_POST['mini_width2']: ((isset($my_para->mini_width2)) ? $my_para->mini_width2:  '300') ;
281
282$my_para->echelle_max=(isset($_POST['echelle_max']))? $_POST['echelle_max'] : ((isset($my_para->echelle_max)) ? $my_para->echelle_max :  '1.2'); 
283$my_para->marge_basse=(isset($_POST['marge_basse']))? $_POST['marge_basse']: ((isset($my_para->marge_basse)) ? $my_para->marge_basse :  '50');
284$my_para->fade_in=(isset($_POST['fade_in']))? $_POST['fade_in']: ((isset($my_para->fade_in)) ? $my_para->fade_in :  '200');
285
286//===============================================================================       
287
288if ( isset($_POST['submit'] ) && $_POST['submit'] == l10n('cl_autosize_save') )  { 
289                $my_para->check_desc_v = isset($_POST['check_desc_v']) ? $_POST['check_desc_v'] : "off" ;
290                $my_para->check_icon_v = isset($_POST['check_icon_v']) ? $_POST['check_icon_v'] : "off" ;
291                $my_para->check_auto_w = isset($_POST['check_auto_w']) ? $_POST['check_auto_w'] : "off" ;
292
293                $my_para->webmaster_enabled = isset($_POST['webmaster_enabled']) ? $_POST['webmaster_enabled'] : "off" ;
294                $my_para->admin_enabled = isset($_POST['admin_enabled']) ? $_POST['admin_enabled'] : "off" ;
295                $my_para->generic_enabled = isset($_POST['generic_enabled']) ? $_POST['generic_enabled'] : "off" ;
296                $my_para->guest_enabled = isset($_POST['guest_enabled']) ? $_POST['guest_enabled'] : "off" ;
297                $my_para->normal_enabled = isset($_POST['normal_enabled']) ? $_POST['normal_enabled'] : "off" ;
298
299         }else{
300                $my_para->check_desc_v = isset($_POST['check_desc_v']) ? $_POST['check_desc_v'] : ( ( isset($my_para->check_desc_v) ) ? $my_para->check_desc_v :   'off') ; 
301                $my_para->check_icon_v = isset($_POST['check_icon_v']) ? $_POST['check_icon_v'] : ( ( isset($my_para->check_icon_v) ) ? $my_para->check_icon_v :   'off') ; 
302                $my_para->check_auto_w = isset($_POST['check_auto_w']) ? $_POST['check_auto_w'] : ( ( isset($my_para->check_auto_w) ) ? $my_para->check_auto_w :   'off') ; 
303
304
305$my_para->webmaster_enabled = isset($_POST['webmaster_enabled']) ? $_POST['webmaster_enabled'] : ( ( isset($my_para->webmaster_enabled) ) ? $my_para->webmaster_enabled :   'on') ; 
306$my_para->admin_enabled  = isset($_POST['admin_enabled ']) ? $_POST['admin_enabled '] : ( ( isset($my_para->admin_enabled ) ) ? $my_para->admin_enabled :   'on') ; 
307$my_para->generic_enabled = isset($_POST['generic_enabled']) ? $_POST['generic_enabled'] : ( ( isset($my_para->generic_enabled) ) ? $my_para->generic_enabled :   'on') ; 
308$my_para->guest_enabled = isset($_POST['guest_enabled']) ? $_POST['guest_enabled'] : ( ( isset($my_para->guest_enabled) ) ? $my_para->guest_enabled :   'on') ;
309$my_para->normal_enabled = isset($_POST['normal_enabled']) ? $_POST['normal_enabled'] : ( ( isset($my_para->normal_enabled) ) ? $my_para->normal_enabled :   'on') ; 
310
311
312   }
313
314return $my_para;
315}
316        /*
317        *
318        */
319function cl_autosize_sauve_options_inf()
320{
321global $options,$infos_message,$conf,$autosize_parametres  ;
322$infos_message .=l10n("cl_autosize_save_config")."<br>";
323 $autosize_parametres=cl_autosize_Set_Options();
324
325 if ( isset($autosize_parametres) )
326        {
327 
328                $query = '
329                UPDATE '.CONFIG_TABLE.'
330                SET value="'.addslashes(serialize($autosize_parametres)).'"
331                WHERE param = "cl_autosize"
332                LIMIT 1';
333                        pwg_query($query);
334          }
335         
336 }
337
338 function auto_memo_var($variables)
339{
340  ob_start();
341  echo '<pre>';
342  print_r($variables);
343  echo '</pre>';
344  $m= ob_get_contents();
345  ob_end_clean();
346  return $m;           
347}
348   
349
350?>
Note: See TracBrowser for help on using the repository browser.