source: extensions/AMetaData/main.inc.php @ 7563

Last change on this file since 7563 was 7563, checked in by grum, 13 years ago

fix bug:1990 - Since release 0.5.3, unable to do search

  • Property svn:executable set to *
File size: 9.8 KB
Line 
1<?php
2/*
3Plugin Name: Advanced MetaData
4Version: 0.5.4
5Description: An advanced metadata manager
6Plugin URI: http://piwigo.org/ext/extension_view.php?eid=364
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    PWG user : http://forum.piwigo.org/profile.php?id=3706
17
18    << May the Little SpaceFrog be with you ! >>
19--------------------------------------------------------------------------------
20
21:: HISTORY
22
23| release | date       |
24| 0.0     | 2010/01/21 | * start coding
25|         |            |
26|         |            |
27| 0.1b    | 2010/03/21 | * beta release
28|         |            |
29|         |            |
30| 0.2b    | 2010/03/23 | * beta release
31|         |            |
32|         |            |
33| 0.3b    | 2010/04/11 | * beta release
34|         |            |
35|         |            |
36| 0.4.0   | 2010/04/24 | * release for Piwigo 2.1
37|         |            |
38|         |            | * uses some GPC 3.1.0 functions
39|         |            |
40|         |            | * optimize ajax request to fill the metadata database
41|         |            |
42|         |            | * replace all the 'mysql_*' functions with 'pwg_db_*'
43|         |            |   functions
44|         |            |
45|         |            | * update some html/css
46|         |            |
47|         |            |
48| 0.5.0   | 2010/07/24 | * release 0.5.0 was not published, implemented features
49|         |            |   are reported in the release 0.5.1
50|         |            |
51|         |            |
52| 0.5.1   | 2010/09/12 | * update to the JpegMetadata class 1.1.1 to fix the
53|         |            |   mantis bugs&features 1686, 1718, 1719, 1826, 1859 and
54|         |            |   1870
55|         |            |
56|         |            | * mantis : bug 1686
57|         |            |   . Picture analysis finish with an Error 500 or with a
58|         |            |     problem of memory limit
59|         |            |
60|         |            | * mantis : feature 1719
61|         |            |   . Coding a DateTime class
62|         |            |
63|         |            | * mantis : feature 1718
64|         |            |   . Make test images lighter
65|         |            |     The weight of tests images provided with the
66|         |            |     JpegMetadata class was too heavy ; the file size
67|         |            |     has been reduced from 9Mb to 230Kb
68|         |            |
69|         |            | * mantis : feature 1688
70|         |            |   . Improve performance when the database is filled
71|         |            |     each time a page is displayed (now using an ajax
72|         |            |     call)
73|         |            |
74|         |            | * mantis : feature 1692
75|         |            |   . Add possibility for user to build their own "magic"
76|         |            |     tags
77|         |            |
78|         |            | * mantis : feature 1777
79|         |            |   . Weight of the metadata database can becomes very
80|         |            |     heavy
81|         |            |
82|         |            | * mantis : feature 1691
83|         |            |   . Add possibility to search picture by metadata
84|         |            |     properties
85|         |            |
86|         |            | * mantis bug:1826
87|         |            |   . digiKam XMP tags are not recognized
88|         |            |
89|         |            | * mantis : feature 1846
90|         |            |   . Read the metadata in the HD picture
91|         |            |
92|         |            | * mantis : feature 1857
93|         |            |   . Implement a basic and an advanced interface mode
94|         |            |
95|         |            | * mantis : feature 1858
96|         |            |   . Ability to import tags from picture to piwigo tags
97|         |            |
98|         |            | * mantis bug:1859
99|         |            |   . JpegMetadata class can't manage multiple IPTC keywords
100|         |            |     keywords
101|         |            |
102|         |            | * mantis bug:1861
103|         |            |   . Accentued chars from ISO-8859-1 charset are not
104|         |            |     recognized
105|         |            |
106|         |            | * mantis bug:1870
107|         |            |   . Xmp ISOSpeedRatings was not interpreted by
108|         |            |     'Magic' metadata
109|         |            |
110|         |            | * ajax management entirely rewritted
111|         |            |
112|         |            | * user interface reviewed
113|         |            |
114|         |            | * add some triggers events when picture metadata are
115|         |            |   loaded in the picture.php page
116|         |            |   . amd_jpegMD_loaded
117|         |            |   . amd_jpegMD_userDefinedValues_built
118|         |            |
119|         |            | * mantis : feature 1858
120|         |            |   . Ability to import tags from picture to piwigo tags
121|         |            |
122| 0.5.2   | 2010/09/28 | * fix bug, need to load GPC CommonPlugin.class.inc.php
123|         |            |   on the main.inc.php file
124|         |            | * the "templates/amd_dialog_metadata_choose.tpl" file
125|         |            |   was not commit on the repository ; so need to build a
126|         |            |   new package
127|         |            |
128| 0.5.3   | 2010/09/30 | * mantis bug:1894
129|         |            |   . Error when filling the metadata repository
130|         |            |
131|         |            | * mantis bug:1898
132|         |            |   . Warning "division by zero" on Canon images
133|         |            |
134|         |            | * mantis bug:1911
135|         |            |   . Unable to read Jpeg file if there is extradata
136|         |            |     after the EOI marker
137|         |            |
138|         |            | * mantis bug:1863
139|         |            |   . Except "keywords" meta, all IPTC meta declared
140|         |            |     as "repeatable" are not managed
141|         |            |
142|         |            | * mantis bug:1955
143|         |            |   . Incorrect mapping for IPTC File format
144|         |            |
145|         |            | * mantis bug:1956
146|         |            |   . IPTC "Subject Reference" is not implemented
147|         |            |
148|         |            | * mantis bug:1925
149|         |            |   . default selected tags works only for the french
150|         |            |     user
151|         |            |
152|         |            | * mantis bug:1912
153|         |            |   . Reading digiKam hierarchical keywords as 'flat'
154|         |            |     keywords
155|         |            |
156|         |            | * mantis bug:1968
157|         |            |   . Keyword to tag conversion generate duplicated tags
158|         |            |
159|         |            | * mantis bug:1923
160|         |            |   . with google chrome, the métadata list is not
161|         |            |     displayed
162|         |            |
163|         |            | * mantis bug:1294
164|         |            |   . filling database method
165|         |            |
166|         |            | * mantis bug:1975
167|         |            |   . Implement COM segment as a tag
168|         |            |
169|         |            | * mantis bug:1976
170|         |            |   . Implement keywords as magic tag
171|         |            |
172|         |            | * mantis bug:1978
173|         |            |   . Some meta names are not translated in french
174|         |            |
175| 0.5.4   | 2010/11/01 | * mantis bug:1990
176|         |            |   . Since release 0.5.3, unable to do search
177|         |            |
178|         |            |
179|         |            |
180|         |            |
181|         |            |
182|         |            |
183|         |            |
184|         |            |
185
186
187:: TO DO
188
189--------------------------------------------------------------------------------
190*
191* :: NFO
192* AMD_AIM : classe to manage plugin integration into plugin menu
193* AMD_AIP : classe to manage plugin admin pages
194* AMD_PIP : classe to manage plugin public integration
195*
196*
197* :: Triggers & data provided
198* - amd_jpegMD_loaded
199*   . triggered on the picture.php page, when metadata were loaded from the
200*     picture file
201*   . the JpegMetadata object is provided as data to the callback function
202*
203* - amd_jpegMD_userDefinedValues_built
204*   . triggered on the picture.php page, when metadata were loaded from the
205*     picture file and user defined tags were built
206*   . an array is provided as data to the callback function
207*       $data['picture'] : an array of (tagId => value) with only the selected
208*                          metadata
209*       $data['user']    : an array of (tagId => value) with only the user
210*                          defined metadata built
211*
212*
213--------------------------------------------------------------------------------
214*/
215
216// pour faciliter le debug - make debug easier :o)
217// ini_set('error_reporting', E_ALL);
218// ini_set('display_errors', true);
219
220if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
221
222define('AMD_DIR' , basename(dirname(__FILE__)));
223define('AMD_PATH' , PHPWG_PLUGINS_PATH . AMD_DIR . '/');
224
225include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/CommonPlugin.class.inc.php');
226include_once('amd_version.inc.php'); // => Don't forget to update this file !!
227
228global $prefixeTable, $page;
229
230
231if(defined('IN_ADMIN'))
232{
233  //AMD admin part loaded and active only if in admin page
234  include_once("amd_aim.class.inc.php");
235  $obj = new AMD_AIM($prefixeTable, __FILE__);
236  $obj->initEvents();
237  set_plugin_data($plugin['id'], $obj);
238}
239else
240{
241  //AMD public part loaded and active only if in public page and if GPC is up to date
242  if(CommonPlugin::checkGPCRelease(3,3,2))
243  {
244    include_once("amd_pip.class.inc.php");
245    $obj = new AMD_PIP($prefixeTable, __FILE__);
246    set_plugin_data($plugin['id'], $obj);
247  }
248}
249
250
251?>
Note: See TracBrowser for help on using the repository browser.