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

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

Fix many bugs
bug:1894, bug:1898, bug:1911, bug:1863, bug:1955, bug:1956, bug:1925

  • Property svn:executable set to *
File size: 8.6 KB
Line 
1<?php
2/*
3Plugin Name: Advanced MetaData
4Version: 0.5.2
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.x.y   | 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|         |            |
153|         |            |
154|         |            |
155|         |            |
156|         |            |
157
158
159:: TO DO
160
161--------------------------------------------------------------------------------
162*
163* :: NFO
164* AMD_AIM : classe to manage plugin integration into plugin menu
165* AMD_AIP : classe to manage plugin admin pages
166* AMD_PIP : classe to manage plugin public integration
167*
168*
169* :: Triggers & data provided
170* - amd_jpegMD_loaded
171*   . triggered on the picture.php page, when metadata were loaded from the
172*     picture file
173*   . the JpegMetadata object is provided as data to the callback function
174*
175* - amd_jpegMD_userDefinedValues_built
176*   . triggered on the picture.php page, when metadata were loaded from the
177*     picture file and user defined tags were built
178*   . an array is provided as data to the callback function
179*       $data['picture'] : an array of (tagId => value) with only the selected
180*                          metadata
181*       $data['user']    : an array of (tagId => value) with only the user
182*                          defined metadata built
183*
184*
185--------------------------------------------------------------------------------
186*/
187
188// pour faciliter le debug - make debug easier :o)
189// ini_set('error_reporting', E_ALL);
190// ini_set('display_errors', true);
191
192if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
193
194define('AMD_DIR' , basename(dirname(__FILE__)));
195define('AMD_PATH' , PHPWG_PLUGINS_PATH . AMD_DIR . '/');
196
197include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/CommonPlugin.class.inc.php');
198include_once('amd_version.inc.php'); // => Don't forget to update this file !!
199
200global $prefixeTable, $page;
201
202
203if(defined('IN_ADMIN'))
204{
205  //AMD admin part loaded and active only if in admin page
206  include_once("amd_aim.class.inc.php");
207  $obj = new AMD_AIM($prefixeTable, __FILE__);
208  $obj->initEvents();
209  set_plugin_data($plugin['id'], $obj);
210}
211else
212{
213  //AMD public part loaded and active only if in public page and if GPC is up to date
214  if(CommonPlugin::checkGPCRelease(3,2,0))
215  {
216    include_once("amd_pip.class.inc.php");
217    $obj = new AMD_PIP($prefixeTable, __FILE__);
218    set_plugin_data($plugin['id'], $obj);
219  }
220}
221
222
223?>
Note: See TracBrowser for help on using the repository browser.