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

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

[Autosize][beta] adjust width with pamooramic.

File size: 12.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);
27
28class autosize_controler {
29        /*
30        *
31        */
32        static public function cl_autosize_affiche()
33        {
34                global $user, $picture, $template,$page;
35                global $content, $element_info;   
36                global $infos_message,$erreur_message;
37                global  $conf,$lang ,$user,$userdata;
38
39                load_language('lang', AUTOSIZE_PATH);
40                $my_path = dirname(__FILE__).'/';
41
42                if (isset( $page['body_id'])  ) {
43                if ( $page['body_id']=='thePicturePage'  ) {
44                        if ( isset($picture['current'])){
45                               
46                                $autosize_parametres = cl_autosize_Get_Options();
47                                include (AUTOSIZE_PATH."include/affiche.php"); 
48                                $debug = isset($conf['debug']) ? $conf['debug'] : false ; 
49                                $cl_visible=isset($conf['cl_auto']) ? $conf['cl_auto'] : 'true' ; 
50                               
51                                if($autosize_parametres->check_icon_v == 'on'){
52                                 
53                                $template->assign('cl_autosize_button', 
54                                 array( 
55                                                'cl_autosize_info' => 'cl_autosize_info' ,
56                                                'cl_autosize_info_2' => 'cl_autosize_info_2' ,   
57                                                'URL' => $_SERVER['REQUEST_URI'] ,
58                                                'ICON2' => AUTOSIZE_PATH . 'icons/button-maximize.png',
59                                                'ICON' => AUTOSIZE_PATH . 'icons/button-minimize.png'
60                                        )
61
62                                        );
63 
64                                $template->set_filenames(array('cl_bp' => $my_path. 'template/picture.tpl'));
65                                $template->concat('PLUGIN_PICTURE_ACTIONS', $template->parse('cl_bp', true));
66                                }
67                                 
68
69                                $template->set_filenames(
70                                                array('autosize_content'=> $my_path.'template/autosize.tpl')
71                                        );
72                   $template->assign(
73                                                array('DEBUG' => $debug   ,
74                                                'cl_visible' =>  $cl_visible
75                                                )
76                                                 );             
77                                                                       
78                                return $template->parse( 'autosize_content', false);
79                        }
80     
81                }
82                }
83        } //public function cl_autosize_affiche
84        /*
85        *
86        */
87        static public function cl_autosize_admin($menu)
88                {
89                global  $lang ;
90                array_push($menu, array('NAME' => 'Autosize',
91                'URL' => get_admin_plugin_menu_link(AUTOSIZE_PATH . 'admin/admin_autosize.php')));
92                return $menu;
93        } //function cl_autosize_admin
94        /*
95        *
96        */
97        static public function cl_autosize_aff_infos_plus()
98                {
99                 global $template,$infos_message,$erreur_message, $user ;
100                global  $conf,$lang ;
101
102                 //==============================================================
103                  if (isset($erreur_message))
104                                {       
105                                if ($erreur_message <> "")
106                                        {
107                                                $erreur_message=str_replace("\n",'<br />',$erreur_message) ;
108                                                $template->assign('errors',$erreur_message);
109                                                $erreur_message="";
110                                        }
111                                }
112                  if (isset($infos_message))
113                                {       
114               
115                                if ($infos_message <> "")
116                                        {
117                                                $infos_message=str_replace("\n",'<br />',$infos_message) ;
118                                                $template->assign('infos',$infos_message);
119                                                $infos_message="";
120                                        }
121                                }
122                                //=============================================================
123                return;         
124               
125                } // function cl_autosize_aff_infos_plus
126
127
128
129 /*
130 * conflit =============================================
131 */
132        static public function cl_autosize_script()
133        {
134           global  $template,$user,$conf,$picture ;
135
136                $my_path =  basename(dirname(__FILE__)).'/' ;
137        $my_path = dirname(__FILE__).'/';
138                $template->set_filenames(
139                     array('autosize_init'=>$my_path. "template/conflit.tpl" 
140                         )
141                      );                 
142                $template->assign(
143                                                array('AUTOSIZE_ROOT' => AUTOSIZE_PATH)
144                                                 );
145
146                   return $template->parse( 'autosize_init', false);
147
148       
149        }// function cl_autosize_script
150        /*
151        *
152    */
153        static public function cl_ajuste_data($content){
154           global  $template,$user,$conf,$picture ;
155                        $my_path = realpath(AUTOSIZE_PATH .'/');
156         $userdata=$user;
157         $fields = array( 'maxwidth', 'maxheight' );
158         
159         $ThePicture = $template->get_template_vars('current'); 
160                        $data = array();
161                       
162
163 return $content;
164
165                        $data['maxwidth'] = '1200';
166$data['maxheight'] ='250';
167                        $data['user_id'] = $userdata['id'];
168           foreach ($fields as $field)
169      {
170        if (isset($_POST[$field]))
171        {
172          $data[$field] = $_POST[$field];
173        }
174      }
175       
176        if($data['maxwidth'] != "" )
177{
178        $picture['current']['scaled_width']=$data['maxwidth'];
179                 $picture['current']['scaled_height']=$data['maxheight'];
180       mass_updates(USER_INFOS_TABLE,
181                   array('primary' => array('user_id'), 'update' => $fields),
182                   array($data));
183       
184}
185
186 
187   return $content;
188   /*
189 $template->assign(
190                                                array(
191                                                'AUTOSIZE_PATH' => $my_path,
192
193                                                                                        )
194                                                 );
195 
196                $template->parse( 'autosize_cl_init', false);
197        return $content;
198        */
199
200                                                                                 
201         }
202
203} // class
204
205
206        /*
207        *
208        */
209 function cl_autosize_Get_Options()
210  {
211                global $conf,$autosize_parametres; 
212                $autosize_parametres =  unserialize($conf['cl_autosize']);
213                $autosize_parametres =  cl_autosize_Set_Options();
214                return $autosize_parametres;
215  }
216        /*
217        *
218        */
219function cl_autosize_Set_Options()
220  {
221
222  global $autosize_parametres;
223//=============================================================================
224$autosize_parametres->webmaster_height =(isset($_POST['webmaster_height'])) ? $_POST['webmaster_height'] : ((isset($autosize_parametres->webmaster_height )) ? $autosize_parametres->webmaster_height : '100%' ) ;
225$autosize_parametres->webmaster_width=(isset($_POST['webmaster_width']))? $_POST['webmaster_width']: ((isset($autosize_parametres->webmaster_width)) ? $autosize_parametres->webmaster_width:  '90%') ;
226
227$autosize_parametres->admin_height =(isset($_POST['admin_height'])) ? $_POST['admin_height'] : ((isset($autosize_parametres->admin_height )) ? $autosize_parametres->admin_height : '90%' ) ;
228$autosize_parametres->admin_width=(isset($_POST['admin_width']))? $_POST['admin_width']: ((isset($autosize_parametres->admin_width)) ? $autosize_parametres->admin_width:  '90%') ;
229
230$autosize_parametres->generic_height =(isset($_POST['generic_height'])) ? $_POST['generic_height'] : ((isset($autosize_parametres->generic_height )) ? $autosize_parametres->generic_height : '100%' ) ;
231$autosize_parametres->generic_width=(isset($_POST['generic_width']))? $_POST['generic_width']: ((isset($autosize_parametres->generic_width)) ? $autosize_parametres->generic_width:  '90%') ;
232
233$autosize_parametres->guest_height =(isset($_POST['guest_height'])) ? $_POST['guest_height'] : ((isset($autosize_parametres->guest_height )) ? $autosize_parametres->guest_height : '100%' ) ;
234$autosize_parametres->guest_width=(isset($_POST['guest_width']))? $_POST['guest_width']: ((isset($autosize_parametres->guest_width)) ? $autosize_parametres->guest_width:  '90%') ;
235
236$autosize_parametres->normal_height =(isset($_POST['normal_height'])) ? $_POST['normal_height'] : ((isset($autosize_parametres->normal_height )) ? $autosize_parametres->normal_height : '100%' ) ;
237$autosize_parametres->normal_width=(isset($_POST['normal_width']))? $_POST['normal_width']: ((isset($autosize_parametres->normal_width)) ? $autosize_parametres->normal_width:  '90%') ;
238
239
240$autosize_parametres->mini_height =(isset($_POST['mini_height'])) ? $_POST['mini_height'] : ((isset($autosize_parametres->mini_height )) ? $autosize_parametres->mini_height : '150' ) ;
241$autosize_parametres->mini_width=(isset($_POST['mini_width']))? $_POST['mini_width']: ((isset($autosize_parametres->mini_width)) ? $autosize_parametres->mini_width:  '300') ;
242
243$autosize_parametres->echelle_max=(isset($_POST['echelle_max']))? $_POST['echelle_max'] : ((isset($autosize_parametres->echelle_max)) ? $autosize_parametres->echelle_max :  '1.2'); 
244$autosize_parametres->marge_basse=(isset($_POST['marge_basse']))? $_POST['marge_basse']: ((isset($autosize_parametres->marge_basse)) ? $autosize_parametres->marge_basse :  '50');
245//===============================================================================       
246
247if ( isset($_POST['submit'] ) && $_POST['submit'] == l10n('cl_autosize_save') )  { 
248                $autosize_parametres->check_desc_v = isset($_POST['check_desc_v']) ? $_POST['check_desc_v'] : "off" ;
249                $autosize_parametres->check_icon_v = isset($_POST['check_icon_v']) ? $_POST['check_icon_v'] : "off" ;
250                $autosize_parametres->check_auto_w = isset($_POST['check_auto_w']) ? $_POST['check_auto_w'] : "off" ;
251
252                $autosize_parametres->webmaster_enabled = isset($_POST['webmaster_enabled']) ? $_POST['webmaster_enabled'] : "off" ;
253                $autosize_parametres->admin_enabled = isset($_POST['admin_enabled']) ? $_POST['admin_enabled'] : "off" ;
254                $autosize_parametres->generic_enabled = isset($_POST['generic_enabled']) ? $_POST['generic_enabled'] : "off" ;
255                $autosize_parametres->guest_enabled = isset($_POST['guest_enabled']) ? $_POST['guest_enabled'] : "off" ;
256                $autosize_parametres->normal_enabled = isset($_POST['normal_enabled']) ? $_POST['normal_enabled'] : "off" ;
257
258         }else{
259                $autosize_parametres->check_desc_v = isset($_POST['check_desc_v']) ? $_POST['check_desc_v'] : ( ( isset($autosize_parametres->check_desc_v) ) ? $autosize_parametres->check_desc_v :   'off') ; 
260                $autosize_parametres->check_icon_v = isset($_POST['check_icon_v']) ? $_POST['check_icon_v'] : ( ( isset($autosize_parametres->check_icon_v) ) ? $autosize_parametres->check_icon_v :   'off') ; 
261                $autosize_parametres->check_auto_w = isset($_POST['check_auto_w']) ? $_POST['check_auto_w'] : ( ( isset($autosize_parametres->check_auto_w) ) ? $autosize_parametres->check_auto_w :   'off') ; 
262
263
264$autosize_parametres->webmaster_enabled = isset($_POST['webmaster_enabled']) ? $_POST['webmaster_enabled'] : ( ( isset($autosize_parametres->webmaster_enabled) ) ? $autosize_parametres->webmaster_enabled :   'on') ; 
265$autosize_parametres->admin_enabled  = isset($_POST['admin_enabled ']) ? $_POST['admin_enabled '] : ( ( isset($autosize_parametres->admin_enabled ) ) ? $autosize_parametres->admin_enabled :   'on') ; 
266$autosize_parametres->generic_enabled = isset($_POST['generic_enabled']) ? $_POST['generic_enabled'] : ( ( isset($autosize_parametres->generic_enabled) ) ? $autosize_parametres->generic_enabled :   'on') ; 
267$autosize_parametres->guest_enabled = isset($_POST['guest_enabled']) ? $_POST['guest_enabled'] : ( ( isset($autosize_parametres->guest_enabled) ) ? $autosize_parametres->guest_enabled :   'on') ;
268$autosize_parametres->normal_enabled = isset($_POST['normal_enabled']) ? $_POST['normal_enabled'] : ( ( isset($autosize_parametres->normal_enabled) ) ? $autosize_parametres->normal_enabled :   'on') ; 
269
270
271   }
272
273return $autosize_parametres;
274}
275        /*
276        *
277        */
278function cl_autosize_sauve_options_inf()
279{
280global $options,$infos_message,$conf,$autosize_parametres  ;
281$infos_message .=l10n("cl_autosize_save_config")."<br>";
282 $autosize_parametres=cl_autosize_Set_Options();
283
284 if ( isset($autosize_parametres) )
285        {
286 
287                $query = '
288                UPDATE '.CONFIG_TABLE.'
289                SET value="'.addslashes(serialize($autosize_parametres)).'"
290                WHERE param = "cl_autosize"
291                LIMIT 1';
292                        pwg_query($query);
293          }
294         
295 }
296
297
298
299?>
Note: See TracBrowser for help on using the repository browser.