source: extensions/GrumPluginClasses/main.inc.php @ 15340

Last change on this file since 15340 was 15340, checked in by grum, 12 years ago

feature:2436 - Compatibility with Piwigo 2.4

  • Property svn:executable set to *
File size: 10.0 KB
Line 
1<?php
2/*
3Plugin Name: Grum Plugins Classes.3
4Version: 3.5.2
5Description: Collection de classes partagées entre mes plugins (existants, ou à venir) / Partaged classes between my plugins (actuals or futures)
6Plugin URI: http://piwigo.org/ext/extension_view.php?eid=199
7Author: grum@piwigo.org
8Author URI: http://photos.grum.fr/
9*/
10
11/*
12--------------------------------------------------------------------------------
13  Author     : Grum
14    email    : grum@piwigo.org
15    website  : http://photos.grum.fr
16
17    << May the Little SpaceFrog be with you ! >>
18--------------------------------------------------------------------------------
19
20:: HISTORY
21
22| release | date       |
23| 2.0.0   | 2008/07/20 | * convert classes for piwigo 2.0
24|         |            |
25| 2.0.1   | 2008/12/28 | * convert classe tables.class.inc to php5
26|         |            |
27| 2.0.2   | 2009/04/26 | * add setOptions/getOptions for GPCPagesNavigation class
28|         |            | * add option to set first/prev/next/last textes
29|         |            |
30| 2.0.3   | 2009/07/24 | * modify common_plugin class config loader (r2.0.1)
31|         |            |
32| 2.0.4   | 2009/11/29 | * modify users class
33|         |            |
34| 3.0.0   | 2010/03/28 | * Uses piwigo pwg_db_* functions instead of mysql_* functions
35|         |            | * update classes & functions names
36|         |            | * include the JpegMetaData class
37|         |            |
38| 3.0.1   | 2010/04/11 | * little bug on the template (call of an undefined var)
39|         |            | * Add new languages
40|         |            |   . es_ES
41|         |            |   . hu_HU
42|         |            |   . it_IT
43|         |            |
44| 3.1.0   | 2010/04/24 | * add the GPCTabSheet class
45|         |            | * add the GPCRequestBuilder class
46|         |            | * add the pageNavigator.js
47|         |            | * update the GPCCore class
48|         |            | * Add new languages
49|         |            |   . nl_NL
50|         |            |   . de_DE
51|         |            |
52| 3.1.1   | 2010/05/18 | * fix bug in the install process (CommonPlugin not
53|         |            |   included)
54|         |            |
55| 3.2.0   | 2010/09/12 | * Enhance GPCTabSheet functionnalities
56|         |            |   - possibility to choose tab classes
57|         |            | * Add the simpleTip.js
58|         |            | * Enhance GPCRequestBuilder functionnalities
59|         |            |   - now abble to manage complex request with multi-record
60|         |            |   - result can be stored in the caddie
61|         |            |
62| 3.2.1   | 2010/10/09 | * Enhance GPCTabSheet functionnalities
63|         |            |   - add 'id' attribute for tabs (<li> items)
64|         |            |
65|         |            | * Fix JS & CSS bug with IE8
66|         |            |
67| 3.3.0   | 2010/10/13 | * Add the jQuery plugins
68|         |            |   . ui.iconSelector.js + ui.iconSelector.packed.js
69|         |            |   . ui.categorySelector.js + ui.categorySelector.packed.js
70|         |            |
71|         |            | * Pack JS scripts
72|         |            |   . pagesNavigator.packed.js
73|         |            |   . criteriaBuilder.packed.js
74|         |            |   . simpleTip.packed.js
75|         |            |
76|         |            | * Adding GPCCategorySelector class
77|         |            |
78| 3.3.1   | ---- -- -- | * nothing changed, the 3.3.1 package was built to
79|         |            |   replace a wrong file
80|         |            |
81| 3.3.2   | 2010/10/20 | * Fix mantis bug:1945
82|         |            |   . categorySelector : category list is empty
83|         |            |
84|         |            | * Fix many bugs on request builder and improve the css
85|         |            |   and templates
86|         |            |
87|         |            | * Add the jQuery plugins
88|         |            |   . ui.tagSelector.js + ui.tagSelector.packed.js
89|         |            |
90|         |            | * Externalize and pack JS scripts
91|         |            |   . rbSearch.js + rbSearch.packed.js
92|         |            |
93|         |            | * Rename js script
94|         |            |   . criteriaBuilder.js => rbCriteriaBuilder.js
95|         |            |
96| 3.3.3   | 2010/10/20 | * Enhance GPCPublicIntegration functionnalities
97|         |            |   . add the 'pageIsSection()' function
98|         |            |
99|         |            | * mantis bug:1960
100|         |            |   . Ajax function *.tagSelector.get don't work with
101|         |            |     uppercase
102|         |            |
103|         |            | * mantis bug:1971
104|         |            |   . optimization for RBuilder loading language management
105|         |            |
106| 3.4.0   | 2011/01/28 | * mantis bug:1984
107|         |            |   . RBuilder returns an error message when one picture
108|         |            |     have multiple categories
109|         |            |
110|         |            | * fix bug:2109
111|         |            |   . Incompatibility with IE8 (rbuilder)
112|         |            |
113|         |            | * Fix bug on simpleTip.js (script release 1.0.1)
114|         |            |
115|         |            | * GPCCore, GPCTranslate, GPCUsersGroups classes updated
116|         |            |
117|         |            | * add jQuery plugin pack & associated css files
118|         |            |   . inputText
119|         |            |   . inputList
120|         |            |   . inputRadio
121|         |            |   . inputCheckbox
122|         |            |   . inputColorPicker
123|         |            |   . inputColorsFB
124|         |            |   . inputConsole
125|         |            |   . inputDotArea
126|         |            |   . inputNum
127|         |            |   . inputPosition
128|         |            |   . inputStatusBar
129|         |            |
130|         |            | * update categorySelector jQuery plugin
131|         |            |
132|         |            | * minify js scripts (larger size than packed files but
133|         |            |   better performance)
134|         |            |
135| 3.4.1   | 2011/01/31 | * mantis bug:2156
136|         |            |   . undefined variable on RBuilder screens
137|         |            |
138| 3.4.2   | 2011/01/31 | * mantis bug:2162
139|         |            |   . Personalised blocks : when adding a new block,
140|         |            |     previous title & content are not reseted  (AMM bug
141|         |            |     due to inputText.js ui component)
142|         |            |
143| 3.4.3   | 2011/02/01 | * mantis bug:2167
144|         |            |   . RBuilder and GPCore not correctly initialized on
145|         |            |     fresh install
146|         |            |
147| 3.4.4   | 2011/02/02 | * mantis bug:2170
148|         |            |   . File path for RBuilder registered plugins is corrupted
149|         |            |
150|         |            | * mantis bug:2178
151|         |            |   . RBuilder register function don't work
152|         |            |
153|         |            | * mantis bug:2179
154|         |            |   . JS file loaded in wrong order made incompatibility
155|         |            |     with Lightbox, GMaps & ASE plugins (and probably other)
156|         |            |
157|         |            | * add language pt_PT (thanks to translator)
158|         |            |
159| 3.5.0   | 2011/04/10 | * mantis bug:2149
160|         |            |   . Compatibility with piwigo 2.2
161|         |            |
162| 3.5.1   | 2011/05/15 | * mantis bug:2302
163|         |            |   . Request builder interface don't work
164|         |            |
165| 3.5.2   | 2011/05/15 | * Add function to manage special markup
166|         |            |   . BB like markup [b],[i],[url]...
167|         |            |   . [var=<name>] markup
168|         |            |   . [tabs],[tab=id(;default);<tab title>]
169|         |            |   . [form_mail]
170|         |            |
171|         |            | * Add UserAgent classes
172|         |            |
173|         |            | * mantis bug:2160
174|         |            |   . CategorySelector : extended description are not
175|         |            |     managed
176|         |            |
177|         |            | * mantis feature:2634
178|         |            |   . Compatibility with Piwigo 2.4
179|         |            |
180|         |            |
181|         |            |
182|         |            |
183|         |            | ===== Don't forget to update the plugin version ! =====
184|         |            |
185|         |            |
186|         |            |
187|         |            |
188|         |            |
189
190
191:: TO DO
192
193:: WHAT ? WHY ?
194This plugin doesn't do anything itself. It just provide classes for others plugins.
195
196Classes version for this package
197    CommonPlugin.class.php
198    GPCAjax.class.php
199    GPCCategorySelector.class.inc.php
200    GPCCore.class.php
201    GPCCss.class.php
202    GPCPagesNavigation.class.php
203    GPCPublicIntegration.class.php
204    GPCRequestBuilder.class.php
205    GPCTables.class.php -v1.5
206    GPCTabSheet.class.inc.php
207    GPCTranslate.class.inc.php + google_translate.js
208    GPCUsersGroups.class.inc.php
209
210
211See each file to know more about them
212--------------------------------------------------------------------------------
213*/
214
215if(!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
216
217if(!defined('GPC_DIR')) define('GPC_DIR' , basename(dirname(__FILE__)));
218if(!defined('GPC_PATH')) define('GPC_PATH' , PHPWG_PLUGINS_PATH . GPC_DIR . '/');
219
220
221include_once('gpc_version.inc.php'); // => Don't forget to update this file !!
222include_once(GPC_PATH.'classes/GPCCore.class.inc.php');
223
224global $prefixeTable;
225
226
227
228$config=Array();
229GPCCore::loadConfig('gpc', $config);
230
231if(!isset($config['installed'])) $config['installed']='03.01.00';
232if($config['installed']!=GPC_VERSION2)
233{
234  /* the plugin was updated without being deactivated
235   * deactivate + activate the plugin to process the database upgrade
236   */
237  include(GPC_PATH."gpc_install.class.inc.php");
238  $gpc=new GPC_Install($prefixeTable, __FILE__);
239  $gpc->deactivate();
240  $gpc->activate();
241}
242
243
244if(defined('IN_ADMIN'))
245{
246  //GPC admin interface is loaded and active only if in admin page
247  include_once("gpc_aim.class.inc.php");
248
249  $obj = new GPC_AIM($prefixeTable, __FILE__);
250  $obj->initEvents();
251  set_plugin_data($plugin['id'], $obj);
252}
253
254?>
Note: See TracBrowser for help on using the repository browser.