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

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

[extensions] Autosize fix compatibility with gmaps

File size: 16.9 KB
RevLine 
[7375]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// +-----------------------------------------------------------------------+
22class autosize_controler {
[8627]23 //============================================================
24 /*
25  *  cl_autosize_script_1
26 */
27 static public function cl_autosize_script_1()
28        {
29                global  $template,$user,$conf,$picture ,$page, $cl_plugin ;
[11429]30 
31  header ('X-UA-Compatible: n=7')  ;
32   header ('X-UA-Compatible: IE=Edge')  ;
33  if(isset($page['body_id']) && $page['body_id'] == 'theAdminPage' ) return ;
34
[10280]35    if ('kardon' == $user['theme'] and isset($_GET['slideshow'])) return ;
36     
[10347]37    $ma_page=isset($page['body_id'])?$page['body_id']:"" ;
38    if ($ma_page=='thePiwiShackControllerPage') return ;
[8911]39
[8957]40
[10347]41    if (PHPWG_VERSION < 2.2 ) 
42      $file =AUTOSIZE_PATH_ABS.'template/header_2_1.tpl' ;
43    else 
44      $file =AUTOSIZE_PATH_ABS.'template/header_2_2.tpl' ;
45    $template->set_filenames(array('autosize_init_header'=> $file ));
[10845]46    $template->set_filenames(array('autosize_init'=>AUTOSIZE_PATH_ABS. "template/conflit.tpl" ) );
47//=================================================================================================
48$DEBUG_autosize = isset($_POST['cl_debug_conflit']) ? $_POST['cl_debug_conflit'] : "false" ;
49$DEBUG_autosize = isset($_GET['cl_debug_conflit']) ? $_GET['cl_debug_conflit'] : $DEBUG_autosize ;
50$DEBUG_autosize = isset($conf['cl_debug_conflit']) ? $conf['cl_debug_conflit'] : $DEBUG_autosize ; 
51//=================================================================================================
[10347]52
53    $autosize_parametres =       cl_autosize_Get_Options() ;                   
54    $theme=$user['theme'];
55    $template->assign(
56      array(   
57        'autosize_parametres' => $autosize_parametres ,
58        'cl_plugins' => $cl_plugin ,
59        'cl_version' => $cl_plugin['version'] ,
60        'name' => $cl_plugin['name'] ,
[10913]61        'pamoorama' =>  isset($PAMOORAMICS_PATH)?"true":"false",                                                                 
[10347]62        'theme' => $theme  ,
[10845]63        'DEBUG_autosize' =>  $DEBUG_autosize ,
[10347]64        'AUTOSIZE_PATH' => str_replace("../","",AUTOSIZE_PATH)  ,
65        'AUTOSIZE_PATH_ABS' => AUTOSIZE_PATH_ABS,
[10561]66        'Version_pwg' => PHPWG_VERSION
[10347]67         )
68    );
[8957]69                $template->concat('cl_conflit_init', $template->parse('autosize_init_header', true));
[8627]70                return $template->parse( 'autosize_init', false);
71        }// function cl_autosize_script_1
72 //===========================================================
73 /*
[10845]74  * cl_autosize_script_2(admin)
[8627]75 */
76 static public function cl_autosize_script_2()
77 {
[8911]78           global  $template,$user,$conf,$picture ,$page, $cl_plugin,$known_script ;
[11429]79   if ('kardon' == $user['theme'] and isset($_GET['slideshow'])) return ;
[10280]80
[11429]81                        $AUTOSIZE_PATH = dirname(__FILE__).'/';
[10845]82//=================================================================================================
83$DEBUG_autosize = isset($_POST['cl_debug_conflit']) ? $_POST['cl_debug_conflit'] : "false" ;
84$DEBUG_autosize = isset($_GET['cl_debug_conflit']) ? $_GET['cl_debug_conflit'] : $DEBUG_autosize ;
85$DEBUG_autosize = isset($conf['cl_debug_conflit']) ? $conf['cl_debug_conflit'] : $DEBUG_autosize ; 
86//=================================================================================================
87
88
[8627]89                        $ma_page=isset($page['body_id'])?$page['body_id']:"" ;
90                        $theme=$user['theme'];
91                        if ($ma_page=='thePiwiShackControllerPage') return ;
92                       
93                        $template->assign(
94                                        array(
95                                        'cl_version' => $cl_plugin['version'] ,
96                                        'name' => $cl_plugin['name'] ,
97                                        'ma_page' =>    $ma_page,
98                                       
99                                        'theme' => $theme  ,
[10845]100                                        'DEBUG_autosize' => $DEBUG_autosize   ,
[8627]101                                        'AUTOSIZE_PATH' => AUTOSIZE_PATH
102                                        )
103                                                );
104                                                 
105                        $autoscript="<script type='text/javascript'>
106                        /* cl_autosize_script_2 */
107                        if (typeof (save_framework) == 'function')
108                           save_framework('".$ma_page."');
109                        </script>";
[8957]110         
[8940]111            $autoscript .="<input id='ret_autosize'  type='hidden' value='' />";
112            $autoscript .="<input id='src_img_h'  type='hidden' value='' />";
113            $autoscript .="<input id='src_img_w'   type='hidden' value='' />";
[9007]114            $autoscript .="<input id='window_height'  type='hidden' value='' />";
115            $autoscript .="<input id='window_width'   type='hidden' value='' />";
116             $autoscript .='<div id="Debug6"  align=center style="display:none"></div>';
[8627]117                $template->append('footer_elements',$autoscript); 
118                return ; 
119 }// function cl_autosize_script_2
120
121        //================================================================
[7375]122        /*
[8627]123        * cl_autosize_admin
124        */
125        static public function cl_autosize_admin($menu)
126                {
127                global  $lang ;
128                array_push($menu, array('NAME' => 'Autosize',
129                'URL' => get_admin_plugin_menu_link(AUTOSIZE_PATH . 'admin/admin_autosize.php')));
130                return $menu;
131        } //function cl_autosize_admin
132
133    //===============================================================
134        /*
[7375]135        *
[8627]136        */     
[7375]137        static public function cl_autosize_affiche()
[7193]138        {
[8911]139                global $user, $picture, $template,$page,$known_script;
[7193]140                global $content, $element_info;   
141                global $infos_message,$erreur_message;
142                global  $conf,$lang ,$user,$userdata;
[11429]143 if ('kardon' == $user['theme'] and isset($_GET['slideshow'])) return ;
[10845]144                load_language('plugin.lang', AUTOSIZE_PATH);
[11429]145                $AUTOSIZE_PATH = dirname(__FILE__).'/';
[8070]146                 if (isset( $page['body_id']) && $page['body_id']=='thePicturePage'  ) {
147                        if ( isset($picture['current'])){       
[7193]148                                $autosize_parametres = cl_autosize_Get_Options();
[8911]149                                include (AUTOSIZE_PATH."include/affiche.php"); 
[8957]150
151       if (PHPWG_VERSION < 2.2 ) 
152                $file =AUTOSIZE_PATH_ABS.'template/picture_2_1.tpl' ;
153        else 
154                $file =AUTOSIZE_PATH_ABS.'template/picture_2_2.tpl' ;
155
[8959]156
157
158        $template->set_filenames(array('autosize_content_header'=> $file )); 
[10913]159        $template->concat('autosize_content', $template->parse('autosize_content_header', true));   
[8959]160                       
161        $template->set_filenames(array('autosize_init_header'=> $file ));
162                                       
[8057]163                                if($autosize_parametres->check_icon_v == 'on'){                         
164                                                $template->assign('cl_autosize_button', 
165                                                array(  'cl_autosize_info' => 'cl_autosize_info' ,
[10845]166                                                                    'cl_autosize_info_2' => 'cl_autosize_info_2' ,   
167                                                                    'URL' => $_SERVER['REQUEST_URI'] ,
168                                                                    'ICON2' => AUTOSIZE_PATH . 'icons/button-maximize.png',
169                                                                    'ICON' => AUTOSIZE_PATH . 'icons/button-minimize.png'
[8057]170                                                                )
[7536]171
[8627]172                                                        ); 
[11429]173                                        $template->set_filenames(array('cl_bp' => $AUTOSIZE_PATH. 'template/picture.tpl'));
[8057]174                                        $template->concat('PLUGIN_PICTURE_ACTIONS', $template->parse('cl_bp', true));
[7229]175                                }
[8057]176                                 $template->set_filenames(
[11429]177                                                array('autosize_content'=> $AUTOSIZE_PATH.'template/autosize.tpl')
[7193]178                                        );
[11442]179                        $template->concat('autosize_content', $template->parse('autosize_content_header', true));               
180      if(isset($conf['go_up_down']) && ($conf['go_up_down']==true) ){
181        $template->set_filenames(array('mes_script' => realpath(AUTOSIZE_PATH).'/template/mes_scripts.tpl') );
182        $template->func_combine_script(array('id'=>'my_script_2',
183        'path'=> AUTOSIZE_PATH.'/js/JScript.js',
184        'require' => 'jquery'),
185        $template->smarty);
186        $template->assign(array( 
187                          'MY_FOOTER_PATH' =>AUTOSIZE_PATH
188                          ));
189                                       
190        $template->parse('mes_script');
191      }     
192       
193       
194       
195        return $template->parse( 'autosize_content', false);
[8070]196                                  }
[7375]197                }
[8070]198
[7375]199        } //public function cl_autosize_affiche
[8627]200        //===============================================================
201                /*
[7375]202        *
203        */
[7193]204        static public function cl_autosize_aff_infos_plus()
205                {
206                 global $template,$infos_message,$erreur_message, $user ;
[8627]207                 global  $conf,$lang ;
[7669]208       
[7193]209                 //==============================================================
210                  if (isset($erreur_message))
211                                {       
212                                if ($erreur_message <> "")
213                                        {
214                                                $erreur_message=str_replace("\n",'<br />',$erreur_message) ;
215                                                $template->assign('errors',$erreur_message);
216                                                $erreur_message="";
217                                        }
218                                }
219                  if (isset($infos_message))
220                                {       
221               
222                                if ($infos_message <> "")
223                                        {
224                                                $infos_message=str_replace("\n",'<br />',$infos_message) ;
225                                                $template->assign('infos',$infos_message);
226                                                $infos_message="";
227                                        }
228                                }
229                                //=============================================================
230                return;         
231               
[7375]232                } // function cl_autosize_aff_infos_plus
[8627]233        //===============================================================
234        /*
235         *
236        */
237        static public function cl_ajuste_data($content){
238                global  $template,$user,$conf,$picture ;
[11429]239                $AUTOSIZE_PATH = realpath(AUTOSIZE_PATH .'/');
[8627]240                $userdata=$user;
241                $fields = array( 'maxwidth', 'maxheight' );
[8070]242         
[8627]243                $ThePicture = $template->get_template_vars('current'); 
244                $data = array();
245         return $content;
[7816]246
[8627]247                $data['maxwidth'] = '1200';
248                $data['maxheight'] ='250';
249                $data['user_id'] = $userdata['id'];
250                foreach ($fields as $field)
[7943]251                {
[8627]252                        if (isset($_POST[$field]))
253                        {
254                                $data[$field] = $_POST[$field];
255                        }
[7943]256                }
[7193]257       
[8627]258                if($data['maxwidth'] != "" )
259                        {
260                        $picture['current']['scaled_width']=$data['maxwidth'];
261                        $picture['current']['scaled_height']=$data['maxheight'];
262                        mass_updates(USER_INFOS_TABLE,
263                                        array('primary' => array('user_id'), 'update' => $fields),
264                                        array($data)); 
265                        }
[7943]266                 
[8627]267                        return $content;                                                                                 
268                 }
[7375]269
270} // class
271
272
273        /*
274        *
275        */
[7193]276 function cl_autosize_Get_Options()
277  {
[7394]278                global $conf,$autosize_parametres; 
279                $autosize_parametres =  unserialize($conf['cl_autosize']);
280                $autosize_parametres =  cl_autosize_Set_Options();
281                return $autosize_parametres;
[7375]282  }
283        /*
284        *
[7193]285        */
286function cl_autosize_Set_Options()
287  {
[7394]288
[7193]289  global $autosize_parametres;
290//=============================================================================
[7962]291$my_para=$autosize_parametres;
[7193]292
[7962]293$my_para->query =(isset($_POST['query'])) ? $_POST['query'] : ((isset($my_para->query )) ? $my_para->query : 'Qt' ) ;
294$my_para->type=(isset($_POST['type']))? $_POST['type']: ((isset($my_para->type)) ? $my_para->type:  'Ty') ;
[7193]295
[7962]296$my_para->webmaster_height =(isset($_POST['webmaster_height'])) ? $_POST['webmaster_height'] : ((isset($my_para->webmaster_height )) ? $my_para->webmaster_height : '100%' ) ;
[9225]297$my_para->webmaster_width=(isset($_POST['webmaster_width']))? $_POST['webmaster_width']: ((isset($my_para->webmaster_width)) ? $my_para->webmaster_width:  '100%') ;
[7193]298
[9225]299$my_para->admin_height =(isset($_POST['admin_height'])) ? $_POST['admin_height'] : ((isset($my_para->admin_height )) ? $my_para->admin_height : '100%' ) ;
300$my_para->admin_width=(isset($_POST['admin_width']))? $_POST['admin_width']: ((isset($my_para->admin_width)) ? $my_para->admin_width:  '100%') ;
[7193]301
[7962]302$my_para->generic_height =(isset($_POST['generic_height'])) ? $_POST['generic_height'] : ((isset($my_para->generic_height )) ? $my_para->generic_height : '100%' ) ;
[9225]303$my_para->generic_width=(isset($_POST['generic_width']))? $_POST['generic_width']: ((isset($my_para->generic_width)) ? $my_para->generic_width:  '100%') ;
[7193]304
[7962]305$my_para->guest_height =(isset($_POST['guest_height'])) ? $_POST['guest_height'] : ((isset($my_para->guest_height )) ? $my_para->guest_height : '100%' ) ;
[9225]306$my_para->guest_width=(isset($_POST['guest_width']))? $_POST['guest_width']: ((isset($my_para->guest_width)) ? $my_para->guest_width:  '100%') ;
[7193]307
[7962]308$my_para->normal_height =(isset($_POST['normal_height'])) ? $_POST['normal_height'] : ((isset($my_para->normal_height )) ? $my_para->normal_height : '100%' ) ;
[9225]309$my_para->normal_width=(isset($_POST['normal_width']))? $_POST['normal_width']: ((isset($my_para->normal_width)) ? $my_para->normal_width:  '100%') ;
[7193]310
[7725]311
[7962]312$my_para->mini_height =(isset($_POST['mini_height'])) ? $_POST['mini_height'] : ((isset($my_para->mini_height )) ? $my_para->mini_height : '150' ) ;
313$my_para->mini_width=(isset($_POST['mini_width']))? $_POST['mini_width']: ((isset($my_para->mini_width)) ? $my_para->mini_width:  '300') ;
314
315$my_para->mini_height2 =(isset($_POST['mini_height2'])) ? $_POST['mini_height2'] : ((isset($my_para->mini_height2 )) ? $my_para->mini_height2 : '150' ) ;
316$my_para->mini_width2=(isset($_POST['mini_width2']))? $_POST['mini_width2']: ((isset($my_para->mini_width2)) ? $my_para->mini_width2:  '300') ;
317
[9473]318$my_para->echelle_max=(isset($_POST['echelle_max']))? $_POST['echelle_max'] : ((isset($my_para->echelle_max)) ? $my_para->echelle_max :  '1.0'); 
[9225]319$my_para->marge_basse=(isset($_POST['marge_basse']))? $_POST['marge_basse']: ((isset($my_para->marge_basse)) ? $my_para->marge_basse :  '0');
[9473]320$my_para->fade_in=(isset($_POST['fade_in']))? $_POST['fade_in']: ((isset($my_para->fade_in)) ? $my_para->fade_in :  '0');
[7962]321
[7193]322//===============================================================================       
323
324if ( isset($_POST['submit'] ) && $_POST['submit'] == l10n('cl_autosize_save') )  { 
[7962]325                $my_para->check_desc_v = isset($_POST['check_desc_v']) ? $_POST['check_desc_v'] : "off" ;
326                $my_para->check_icon_v = isset($_POST['check_icon_v']) ? $_POST['check_icon_v'] : "off" ;
327                $my_para->check_auto_w = isset($_POST['check_auto_w']) ? $_POST['check_auto_w'] : "off" ;
[7394]328
[7962]329                $my_para->webmaster_enabled = isset($_POST['webmaster_enabled']) ? $_POST['webmaster_enabled'] : "off" ;
330                $my_para->admin_enabled = isset($_POST['admin_enabled']) ? $_POST['admin_enabled'] : "off" ;
331                $my_para->generic_enabled = isset($_POST['generic_enabled']) ? $_POST['generic_enabled'] : "off" ;
332                $my_para->guest_enabled = isset($_POST['guest_enabled']) ? $_POST['guest_enabled'] : "off" ;
333                $my_para->normal_enabled = isset($_POST['normal_enabled']) ? $_POST['normal_enabled'] : "off" ;
[7394]334
[7193]335         }else{
[7962]336                $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') ; 
337                $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') ; 
338                $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') ; 
[7394]339
340
[7962]341$my_para->webmaster_enabled = isset($_POST['webmaster_enabled']) ? $_POST['webmaster_enabled'] : ( ( isset($my_para->webmaster_enabled) ) ? $my_para->webmaster_enabled :   'on') ; 
342$my_para->admin_enabled  = isset($_POST['admin_enabled ']) ? $_POST['admin_enabled '] : ( ( isset($my_para->admin_enabled ) ) ? $my_para->admin_enabled :   'on') ; 
343$my_para->generic_enabled = isset($_POST['generic_enabled']) ? $_POST['generic_enabled'] : ( ( isset($my_para->generic_enabled) ) ? $my_para->generic_enabled :   'on') ; 
344$my_para->guest_enabled = isset($_POST['guest_enabled']) ? $_POST['guest_enabled'] : ( ( isset($my_para->guest_enabled) ) ? $my_para->guest_enabled :   'on') ;
345$my_para->normal_enabled = isset($_POST['normal_enabled']) ? $_POST['normal_enabled'] : ( ( isset($my_para->normal_enabled) ) ? $my_para->normal_enabled :   'on') ; 
[7394]346
347
[7193]348   }
[7316]349
[7962]350return $my_para;
[7193]351}
[7375]352        /*
353        *
[7193]354        */
355function cl_autosize_sauve_options_inf()
356{
357global $options,$infos_message,$conf,$autosize_parametres  ;
358$infos_message .=l10n("cl_autosize_save_config")."<br>";
359 $autosize_parametres=cl_autosize_Set_Options();
360
361 if ( isset($autosize_parametres) )
362        {
363 
364                $query = '
365                UPDATE '.CONFIG_TABLE.'
366                SET value="'.addslashes(serialize($autosize_parametres)).'"
367                WHERE param = "cl_autosize"
368                LIMIT 1';
369                        pwg_query($query);
370          }
371         
372 }
[7375]373
[8729]374 function auto_memo_var($variables)
375{
376  ob_start();
377  echo '<pre>';
378  print_r($variables);
379  echo '</pre>';
380  $m= ob_get_contents();
381  ob_end_clean();
382  return $m;           
383}
384   
[7375]385
[7193]386?>
Note: See TracBrowser for help on using the repository browser.