Changeset 5935


Ignore:
Timestamp:
Apr 21, 2010, 9:27:51 PM (10 years ago)
Author:
grum
Message:

Update plugin for Piwigo 2.1

Location:
extensions/AMetaData
Files:
1 added
19 edited

Legend:

Unmodified
Added
Removed
  • extensions/AMetaData/admin/amd_admin.tpl

    r4905 r5935  
    1 <div class="titrePage">
    2   <h2 style="position:absolute;right:0px;top:32px;height:auto;font-size:12px;font-weight:normal;">:: {$plugin.AMD_VERSION} ::</h2>
    3   <h2>{'amd_title_page'|@translate} <span style="font-size:-1;font-weight:normal;">{$TABSHEET_TITLE}</span></h2>
    4 
    5 </div>
     1<h2 style="float:right;top:-24px;position:relative;height:auto;font-size:12px;font-weight:normal;">{$plugin.AMD_VERSION}</h2>
    62
    73{$AMD_BODY_PAGE}
  • extensions/AMetaData/admin/amd_metadata.tpl

    r4905 r5935  
    1 {known_script id="jquery.ui" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.core.packed.js"}
    2 {known_script id="jquery.ui" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.core.packed.js"}
    3 {known_script id="jquery.ui.sortable" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.sortable.packed.js"}
    4 {known_script id="jquery.ui.dialog" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.dialog.packed.js"}
     1{known_script id="jquery.ui" src=$ROOT_URL|@cat:"themes/default/js/ui/packed/ui.core.packed.js"}
     2{known_script id="jquery.ui.sortable" src=$ROOT_URL|@cat:"themes/default/js/ui/packed/ui.sortable.packed.js"}
     3{known_script id="jquery.ui.dialog" src=$ROOT_URL|@cat:"themes/default/js/ui/packed/ui.dialog.packed.js"}
    54
    65{$statTabsheet}
    7 {$sheetContent}
     6<div id="pageTabContent">
     7  {$sheetContent}
     8</div>
    89
  • extensions/AMetaData/admin/amd_metadata_database.tpl

    r5191 r5935  
    1 {known_script id="jquery.ui" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.core.packed.js"}
    2 {known_script id="jquery.ui.slider" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.slider.packed.js"}
    3 {known_script id="jquery.ui.dialog" src=$ROOT_URL|@cat:"template-common/lib/ui/ui.dialog.packed.js"}
     1{known_script id="jquery.ui" src=$ROOT_URL|@cat:"themes/default/js/ui/packed/ui.core.packed.js"}
     2{known_script id="jquery.ui.slider" src=$ROOT_URL|@cat:"themes/default/js/ui/packed/ui.slider.packed.js"}
     3{known_script id="jquery.ui.dialog" src=$ROOT_URL|@cat:"themes/default/js/ui/packed/ui.dialog.packed.js"}
     4
    45
    56{literal}
    6 <style>
    7  .ui-slider {
    8     width:350px;
    9     height:10px;
    10     border:1px solid;
    11     margin-left:10px;
    12   }
    13  .ui-slider-handle {
    14     width:12px;
    15     height:12px;
    16     position:relative;
    17     top:-2px;
    18     border:1px solid;
    19     background:#cccccc;
    20   }
    21 </style>
    22 
    237<script type="text/javascript">
    248
     
    8973
    9074    doAnalyze="<br><form id='iDialogProgress' class='formtable'>"+
    91       "<div id='iprogressbar_contener'>"+
    92       "<span id='iprogressbar_bg' style='width:0%;'>&nbsp;</span>"+
    93       "<span id='iprogressbar_fg'>0%</span>"+
    94       "</div>{/literal}{'g003_analyze_in_progress'|@translate}{literal}</form>";
     75      "<div id='iprogressbar_contener' class='gcBorderInput'>"+
     76      "<span id='iprogressbar_bg' class='gcBgInput' style='width:0%;'>&nbsp;</span>"+
     77      "<span id='iprogressbar_fg' class='gcLink'>0%</span>"+
     78      "</div><p>{/literal}{'g003_analyze_in_progress'|@translate}{literal}"+
     79      "<br><img src='./plugins/GrumPluginClasses/icons/processing.gif'>"
     80      "</p></form>";
    9581
    9682    $("#dialog")
     
    10288        height:120,
    10389        modal: true,
    104         draggable:false,
     90        draggable:true,
     91        dialogClass: 'gcBgTabSheet gcBorder',
    10592        title: '{/literal}{"g003_updating_metadata"|@translate}{literal}&nbsp;('+modeLabel+')',
    106         overlay:
    107         {
    108           backgroundColor: '#000',
    109           opacity: 0.5,
    110         }
    11193      }
    11294    ).html(doAnalyze);
     
    184166        height:120,
    185167        modal: true,
    186         draggable:false,
     168        draggable:true,
     169        dialogClass: 'gcBgTabSheet gcBorder',
    187170        title: '{/literal}{"g003_updating_metadata"|@translate}{literal}',
    188         overlay:
    189         {
    190           backgroundColor: '#000',
    191           opacity: 0.5
    192         },
     171        dialogClass: 'gcBgTabSheet gcBorder',
    193172        open: function(event, ui)
    194173        {
     
    205184        }
    206185      }
    207     ).html("<br>{/literal}{'g003_analyze_is_finished'|@translate}{literal}&nbsp;("+displayTime(timeElapsed/1000)+")");
     186    )
     187    .html("<br>{/literal}{'g003_analyze_is_finished'|@translate}{literal}&nbsp;("+displayTime(timeElapsed/1000)+")");
    208188
    209189    getStatus();
  • extensions/AMetaData/admin/amd_metadata_display.tpl

    r5088 r5935  
    22
    33{literal}
     4<style>
     5 .ui-widget-overlay {
     6    background:#000000;
     7    opacity:0.88;
     8    filter:alpha(opacity:88);
     9 }
     10</style>
     11
    412<script type="text/javascript">
    513
     
    159167          modal: true,
    160168          draggable:true,
     169          dialogClass: 'gcBgTabSheet gcBorder',
    161170          title: "{/literal}{'g003_deleting_a_group'|@translate}{literal}",
    162           overlay:
    163           {
    164             backgroundColor: '#000',
    165             opacity: 0.5
    166           },
    167171          buttons:
    168172          {
     
    222226        modal: true,
    223227        draggable:true,
     228        dialogClass: 'gcBgTabSheet gcBorder',
    224229        title: dialogTitle,
    225         overlay:
    226         {
    227           backgroundColor: '#000',
    228           opacity: 0.5
    229         },
    230230        buttons:
    231231        {
     
    294294        modal: true,
    295295        draggable:true,
     296        dialogClass: 'gcBgTabSheet gcBorder',
    296297        title: '{/literal}{"g003_add_delete_tags"|@translate}{literal}',
    297         overlay:
    298         {
    299           backgroundColor: '#000',
    300           opacity: 0.5
    301         },
    302298        open: function(event, ui)
    303299        {
     
    330326                }
    331327              ).responseText;
     328
    332329              $(this).dialog('destroy').html("").get(0).removeAttribute('style');
    333330              loadGroupTags(groupId);
     
    341338      }
    342339    )
    343     .html(
    344       $.ajax(
    345         {
    346           type: "POST",
    347           url: "{/literal}{$datas.urlRequest}{literal}",
    348           async: false,
    349           data: { ajaxfct:"groupGetTagList", id:groupId }
    350         }
    351       ).responseText
     340    .html("<br>{/literal}{'g003_loading'|@translate}{literal}<br><img src='./plugins/GrumPluginClasses/icons/processing.gif'>");
     341
     342    $.ajax(
     343      {
     344        type: "POST",
     345        url: "{/literal}{$datas.urlRequest}{literal}",
     346        async: true,
     347        data: { ajaxfct:"groupGetTagList", id:groupId },
     348        success:
     349          function(msg)
     350          {
     351            $("#dialog").html(msg);
     352          }
     353      }
    352354    );
    353355  }
  • extensions/AMetaData/admin/amd_metadata_display_groupList.tpl

    r4905 r5935  
    11{foreach from=$datas.groups key=name item=data}
    2   <li id="iGroupId{$data.id}" class="groupItems">
     2  <li id="iGroupId{$data.id}" class="groupItems gcBgPage">
    33    <img src="{$themeconf.admin_icon_dir}/cat_move.png" class="button drag_button" alt="{'Drag to re-order'|@translate}" title="{'Drag to re-order'|@translate}"/>
    44    <input type="hidden" id="iGroupName{$data.id}" value="{$data.name}">
  • extensions/AMetaData/admin/amd_metadata_display_groupListTagOrder.tpl

    r4905 r5935  
    11{foreach from=$datas key=name item=data}
    2 <li id="g{$group}t{$data.numId}">
     2<li id="g{$group}t{$data.numId}" class="gcBgTabSheet">
    33  <table class="tagListOrderItem">
    44    <tr>
     
    88      <td style="width:35px;text-align:right;">{$data.nbItems}</td>
    99      <td style="width:50px;text-align:right;">{$data.pct}%</td>
    10       <td style="width:104px;"><span class="pctBar" style="display:inline-block;width:{$data.pct}px;"></td>
     10      <td style="width:104px;"><span class="pctBar{$themeconf.name}" style="display:inline-block;width:{$data.pct}px;"></td>
    1111    </tr>
    1212  </table>
  • extensions/AMetaData/admin/amd_metadata_display_groupListTagSelect.tpl

    r4905 r5935  
    99
    1010
    11 <table class="littlefont listTags" style="width:100%;">
     11<table class="littlefont listTags {$themeconf.name}" style="width:100%;">
    1212  {foreach from=$datas key=name item=data}
    1313  <tr>
  • extensions/AMetaData/admin/amd_metadata_select.tpl

    r5226 r5935  
    11{literal}
     2<style>
     3 .ui-widget-overlay {
     4    background:#000000;
     5    opacity:0.88;
     6    filter:alpha(opacity:88);
     7 }
     8</style>
     9
     10
    211<script type="text/javascript">
    312
     
    1625        height:computedHeight,
    1726        modal: true,
    18         draggable:false,
     27        draggable:true,
     28        dialogClass: 'gcBgTabSheet gcBorder',
    1929        title: '{/literal}{"g003_metadata_detail"|@translate}{literal}',
    20         overlay:
    21         {
    22           backgroundColor: '#000',
    23           opacity: 0.5
    24         },
    2530        open: function(event, ui)
    2631        {
     
    4348  function loadTagList()
    4449  {
    45     $("body").css("cursor", "wait");
    4650    order=$('#iSelectOrderTagList').val();
    4751    filter=$("#iSelectFilterTagList").val();
     
    5155    displayTagListOrder();
    5256
    53     $("#iListTags").html(
    54       $.ajax({
     57    $("#iListTags").html("<br>{/literal}{'g003_loading'|@translate}{literal}<br><img src='./plugins/GrumPluginClasses/icons/processing.gif'>");
     58
     59    $.ajax(
     60      {
    5561        type: "POST",
    5662        url: "{/literal}{$datas.urlRequest}{literal}",
    57         async: false,
    58         data: { ajaxfct:"showStatsGetListTags", orderType:order, filterType:filter, excludeUnusedTag:unusedTag, selectedTagOnly:selectedOnly }
    59        }).responseText
    60     );
    61     $("#iListTagsNb").html(
    62       "{/literal}{'g003_number_of_filtered_metadata'|@translate}{literal} "+$("#iListTags table tr").length
    63     );
    64 
    65     //onclick="updateTagSelect('iNumId{$data.numId}', '')"
    66     $("input.cbiListTags")
    67       .bind('click',
    68         function(event)
    69         {
    70           event.stopPropagation();
    71           updateTagSelect($(this).get(0).id, '');
    72         }
    73       );
    74 
    75     $("a.cbiListTags")
    76       .bind('click',
    77         function(event)
    78         {
    79           event.stopPropagation();
    80           loadTagDetail($(this).get(0).id.substr(7));
    81         }
    82       );
    83 
    84 
    85 
    86 
    87     $("body").css("cursor", "default");
     63        async: true,
     64        data: { ajaxfct:"showStatsGetListTags", orderType:order, filterType:filter, excludeUnusedTag:unusedTag, selectedTagOnly:selectedOnly },
     65        success:
     66          function(msg)
     67          {
     68            $("#iListTags").html(msg);
     69
     70            $("#iListTagsNb").html(
     71              "{/literal}{'g003_number_of_filtered_metadata'|@translate}{literal} "+$("#iListTags table tr").length
     72            );
     73
     74            //onclick="updateTagSelect('iNumId{$data.numId}', '')"
     75            $("input.cbiListTags")
     76              .bind('click',
     77                function(event)
     78                {
     79                  event.stopPropagation();
     80                  updateTagSelect($(this).get(0).id, '');
     81                }
     82              );
     83
     84            $("a.cbiListTags")
     85              .bind('click',
     86                function(event)
     87                {
     88                  event.stopPropagation();
     89                  loadTagDetail($(this).get(0).id.substr(7));
     90                }
     91              );
     92          }
     93      }
     94    );
     95
    8896  }
    8997
     
    94102    globalTagId=tag;
    95103    order=$('#iSelectOrderImageList').val();
    96     $("#iListImages").html("<br>{/literal}{'g003_loading'|@translate}{literal}");
     104    $("#iListImages").html("<br>{/literal}{'g003_loading'|@translate}{literal}<br><img src='./plugins/GrumPluginClasses/icons/processing.gif'>");
    97105    $("#iHeaderListImagesTagName").html("["+tag+"]");
    98106
     
    117125  function updateTagSelect(numId, mode)
    118126  {
    119     $("body").css("cursor", "wait");
    120127
    121128    if(mode=='switch')
     
    134141       }).responseText
    135142    );
    136     $("body").css("cursor", "default");
     143
    137144  }
    138145
     
    168175    {
    169176      // by label
     177      /* not fully implemented
    170178      $("#iHLTOrderTag").html("");
    171179      $("#iHLTOrderLabel").html("&#8593;");
    172180      $("#iHLTOrderNum").html("");
     181      */
    173182    }
    174183  }
     
    224233  <tr>
    225234    <th style="width:35%;min-width:340px;"><span id="iHLTOrderTag"></span><a onclick="sortTagList('tag');">{'g003_TagId'|@translate}</a></th>
    226     <th><span id="iHLTOrderLabel"></span><a onclick="sortTagList('label');">{'g003_TagLabel'|@translate}</a></th>
     235    {* <th><span id="iHLTOrderLabel"></span><a onclick="sortTagList('label');">{'g003_TagLabel'|@translate}</a></th> *}
     236    <th>{'g003_TagLabel'|@translate}</th>
    227237    <th width="80px"><span id="iHLTOrderNum"></span><a onclick="sortTagList('num');">{'g003_NumOfImage'|@translate}</a></th>
    228238    <th width="40px">{'g003_Pct'|@translate}</th>
     
    230240  </tr>
    231241</table>
    232 <div id='iListTags'>
     242<div id='iListTags' class="{$themeconf.name}">
    233243</div>
    234244<div id="iListTagsNb"></div>
     
    249259  </table>
    250260
    251   <div id='iListImages'>
     261  <div id='iListImages' class="{$themeconf.name}">
    252262    <div style="width:100%;text-align:center;padding-top:20px;">{'g003_no_items_selected'|@translate}</div>
    253263  </div>
  • extensions/AMetaData/admin/amd_metadata_select_iListImages.tpl

    r4905 r5935  
    66    <td width="40px">{$data.pct}</td>
    77    <td width="110px">
    8       <div class="pctBar" style="width:{$data.pct}px;"></div>
     8      <div class="pctBar{$themeconf.name}" style="width:{$data.pct}px;"></div>
    99    </td>
    1010
  • extensions/AMetaData/admin/amd_metadata_select_iListTags.tpl

    r5088 r5935  
    1010    <td width="40px">{$data.pct}</td>
    1111    <td width="110px">
    12       <div class="pctBar" style="width:{$data.pct}px;"></div>
     12      <div class="pctBar{$themeconf.name}" style="width:{$data.pct}px;"></div>
    1313    </td>
    1414  </tr>
  • extensions/AMetaData/admin/plugin_admin.php

    r4905 r5935  
    2828$main_plugin_object = get_plugin_data($plugin_id);
    2929
    30 $plugin_ai = new AMD_AIP($prefixeTable, $main_plugin_object->get_filelocation());
     30$plugin_ai = new AMD_AIP($prefixeTable, $main_plugin_object->getFileLocation());
    3131$plugin_ai->manage();
    3232
  • extensions/AMetaData/amd.css

    r5191 r5935  
    66table.littlefont th { padding:3px; text-align:left;}
    77table.littlefont td { padding:1px 3px; }
    8 #iprogressbar_contener { border:1px solid #606060; margin:0px; padding:0px; display:block; height:20px; }
    9 #iprogressbar_bg { background:#606060; display:block; z-index:100; position:relative; height:20px; }
    10 #iprogressbar_fg { color:#FF3363; width:100%; text-align:center; display: block; z-index:200; position:relative; top:-18px;  }
     8#iprogressbar_contener { margin:0px; padding:0px; display:block; height:20px; border-width:1px; border-style:solid;}
     9#iprogressbar_bg { display:block; z-index:100; position:relative; height:20px; }
     10#iprogressbar_fg { width:100%; text-align:center; display: block; z-index:200; position:relative; top:-18px;  }
    1111#iHeaderListTags { width:100%; border:1px solid; border-collapse: collapse; margin-top:3px; }
    12 #iListTags { width:100%; border:1px solid; height:280px; border-top:0px; overflow:auto;}
     12#iListTags { width:100%; border:1px solid; height:280px; border-top:0px; overflow:auto; position:relative; left:-1px;}
    1313#iListImages { width:100%; border-bottom:1px solid; overflow:auto;}
    1414#iListTagsNb, #iListImagesNb { width:99%; text-align:right; margin-bottom:8px; padding:2px; font-size:80%; }
    1515#iListTags table, #iListImages table, table.listTags { width:100%; text-align:left; border-collapse: collapse; }
    16 #iListTags table tr:hover { cursor:pointer; background:#303030; }
    17 #iListImages table tr:hover, table.listTags tr:hover { background:#303030; cursor:default; }
     16#iListTags.roma table tr:hover { cursor:pointer; background:#303030; }
     17#iListImages.roma table tr:hover, table.roma tr:hover { background:#303030; cursor:default; }
     18#iListTags.clear table tr:hover { cursor:pointer; color: #D54E21; background:#dbe8f3; }
     19#iListImages.clear table tr:hover, table.clear tr:hover { color: #D54E21; background:#dbe8f3; cursor:default; }
    1820#iHeaderListImages { width:100%; border-bottom:1px solid; }
    1921.nfo ul { margin-top:0em; margin-bottom:1em; }
     
    2123.warning p, .nfo p { margin-top:0.5em; margin-bottom:0em; }
    2224.warning ul { margin-top:0em; margin-bottom:0.5em; }
    23 .pctBar { height:6px; background:#FF7700; }
     25.pctBarroma { height:6px; background:#FF7700; }
     26.pctBarclear { height:6px; background:#005E89; }
    2427li.groupItems { border:1px solid #666666; margin-bottom:5px; padding:0 5px; width:90%; cursor:move; padding:4px; }
    2528div.addGroup { padding-left:40px; text-align:left; }
    2629#iGroups { list-style: none; }
    27 .ui-dialog { background: #222222; border:2px solid #FF3363; }
     30
     31.ui-dialog { border-width:1px; border-style:solid; }
    2832.ui-dialog-buttonpane { padding:4px; }
    2933.ui-dialog-buttonpane button { margin-right:8px; }
    30 .ui-dialog-titlebar { background:#111111; font-weight:bold; }
     34.ui-dialog-titlebar { font-weight:bold; }
    3135.ui-dialog-title-dialog { text-align: left; }
    3236.ui-dialog-titlebar-close { float: right; }
     
    3438.ui-dialog-container { }
    3539.ui-dialog-titlebar-close { display:none; }
     40
     41.ui-widget-overlay { background:#000000; opacity:0.5; filter:alpha(opacity:50); position:absolute; top:0px; left:0px; }
     42
    3643.tagListOrder { list-style: none; padding:0px; margin-right:8px; margin-left:35px; }
    37 .tagListOrder li { border:none; background:#333333; padding:1px; margin-bottom:2px; width:100%; }
     44.tagListOrder li { border:none; padding:1px; margin-bottom:2px; width:100%; }
    3845.groupTags { padding-top:8px; }
    3946.editGroupListButton { margin-left:8px; position:absolute; z-index:1000; }
    4047table.tagListOrderItem { width:100%; border-collapse:collapse; }
    4148.dialogForm { text-align:left; margin:8px; }
    42 #ianalyzestatus { background: #333333; margin:8px; padding:8px; }
     49#ianalyzestatus { margin:8px; padding:8px; }
    4350#ianalyzestatus ul { margin:0px; padding:0 0 0 20px; }
    4451#iamd_nb_item_per_request_display { display:inline-block; width:70px; }
     
    4855#helpBody ul { padding:0px; margin:0px; }
    4956#helpBody li { margin-left:30px; }
     57#iDialogProgress p { text-align: center; margin-top: 8px; margin-bottom: 0pt; }
    5058
     59.tabsheet2 {
     60display:table;
     61font-family:verdana,arial,helvetica,sans-serif; font-size:8px;
     62list-style-image:none; padding: 0 0 0 10px; position:relative; text-decoration:none;
     63white-space:nowrap; margin: 0 0 0 -6px;top:-21px;border-bottom:1px solid;
     64width:100%;
     65}
     66.tabsheet2 li { float:left; margin:0 0 0 0; overflow:hidden; text-align:right; border-width:1px; position:relative; }
     67.tabsheet2 a {
     68display:block; font-size:11px; border:0;
     69font-weight:bold; overflow:hidden; padding:2px 6px;
     70text-align:right; text-decoration:none; margin: 0; }
     71.tabsheet2 a:first-letter { text-transform:capitalize; }
     72
     73.tabsheet2 li:hover, .tabsheet2 li.selected_tab  {
     74padding-top:6px; border-bottom:5px solid;
     75 }
     76/* .tabsheet a:hover */
     77.tabsheet2 a span { display:block; font-size:10px; margin-right:2px; padding:0 3px 0 1px; }
     78
  • extensions/AMetaData/amd_aim.class.inc.php

    r4905 r5935  
    3434    initialize events call for the plugin
    3535  */
    36   function init_events()
     36  function initEvents()
    3737  {
    38     parent::init_events();
    39     add_event_handler('get_admin_plugin_menu_links', array(&$this, 'plugin_admin_menu') );
     38    parent::initEvents();
     39    add_event_handler('get_admin_plugin_menu_links', array(&$this, 'pluginAdminMenu') );
    4040  }
    4141
  • extensions/AMetaData/amd_aip.class.inc.php

    r5226 r5935  
    2323
    2424include_once('amd_root.class.inc.php');
    25 include_once(PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
    26 include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/ajax.class.inc.php');
    27 include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/genericjs.class.inc.php');
     25include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/GPCTabSheet.class.inc.php');
     26include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/GPCAjax.class.inc.php');
     27include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/genericjs.class.inc.php');
    2828
    2929
     
    3232{
    3333  protected $tabsheet;
    34   protected $ajax;
    3534
    3635  /**
     
    4544    parent::__construct($prefixeTable, $filelocation);
    4645
    47     $this->load_config();
    48     $this->init_events();
     46    $this->loadConfig();
     47    $this->initEvents();
    4948
    5049    $this->tabsheet = new tabsheet();
    5150    $this->tabsheet->add('metadata',
    5251                          l10n('g003_metadata'),
    53                           $this->page_link.'&amp;fAMD_tabsheet=metadata');
     52                          $this->getAdminLink().'&amp;fAMD_tabsheet=metadata');
    5453    $this->tabsheet->add('help',
    5554                          l10n('g003_help'),
    56                           $this->page_link.'&amp;fAMD_tabsheet=help');
    57     $this->ajax = new Ajax();
     55                          $this->getAdminLink().'&amp;fAMD_tabsheet=help');
    5856  }
    5957
     
    9189    $template->assign($this->tabsheet->get_titlename(), "[".$selected_tab['caption']."]");
    9290
    93     $template_plugin["AMD_VERSION"] = "<i>".$this->plugin_name."</i> ".l10n('g003_version').AMD_VERSION;
     91    $template_plugin["AMD_VERSION"] = "<i>".$this->getPluginName()."</i> ".l10n('g003_version').AMD_VERSION;
    9492    $template_plugin["AMD_PAGE"] = $_REQUEST['fAMD_tabsheet'];
    9593    $template_plugin["PATH"] = AMD_PATH;
     
    111109  /**
    112110   * initialize events call for the plugin
    113    */
    114   public function init_events()
    115   {
    116     add_event_handler('loc_end_page_header', array(&$this->css, 'apply_CSS'));
     111   *
     112   * don't inherits from its parent => it's normal
     113   */
     114  public function initEvents()
     115  {
     116    add_event_handler('loc_end_page_header', array(&$this->css, 'applyCSS'));
    117117  }
    118118
     
    191191          break;
    192192      }
    193       $this->ajax->return_result($result);
     193      GPCAjax::returnResult($result);
    194194    }
    195195  }
     
    511511    $template->set_filename('body_page', dirname(__FILE__).'/admin/amd_metadata.tpl');
    512512
    513     $statTabsheet = new tabsheet('statTabsheet', $this->tabsheet->get_titlename());
     513    $statTabsheet = new GPCTabSheet('statTabsheet', $this->tabsheet->get_titlename(), 'tabsheet2 gcBorder', 'itab2');
    514514    $statTabsheet->select($tab);
    515515    $statTabsheet->add('database',
    516516                          l10n('g003_database'),
    517                           $this->page_link.'&amp;fAMD_tabsheet=metadata&amp;fAMD_page=database');
     517                          $this->getAdminLink().'&amp;fAMD_tabsheet=metadata&amp;fAMD_page=database');
    518518    $statTabsheet->add('select',
    519519                          l10n('g003_select'),
    520                           $this->page_link.'&amp;fAMD_tabsheet=metadata&amp;fAMD_page=select');
     520                          $this->getAdminLink().'&amp;fAMD_tabsheet=metadata&amp;fAMD_page=select');
    521521    $statTabsheet->add('display',
    522522                          l10n('g003_display'),
    523                           $this->page_link.'&amp;fAMD_tabsheet=metadata&amp;fAMD_page=display');
     523                          $this->getAdminLink().'&amp;fAMD_tabsheet=metadata&amp;fAMD_page=display');
    524524    $statTabsheet->assign();
    525525
     
    549549  protected function displayMetaDataSelect()
    550550  {
    551     global $template;
     551    global $template, $theme, $themes, $themeconf;
     552    /*echo "A".print_r($theme, true)."<br>";
     553    echo "B".print_r($themes, true)."<br>";
     554    echo "C".print_r($themeconf, true)."<br>";
     555    echo "D".print_r($template->smarty->[], true)."<br>";*/
    552556
    553557    $template->set_filename('sheet_page',
    554                   dirname($this->filelocation).'/admin/amd_metadata_select.tpl');
     558                  dirname($this->getFileLocation()).'/admin/amd_metadata_select.tpl');
    555559
    556560    $datas=array(
    557       'urlRequest' => $this->page_link,
    558       'config_GetListTags_OrderType' => $this->my_config['amd_GetListTags_OrderType'],
    559       'config_GetListTags_FilterType' => $this->my_config['amd_GetListTags_FilterType'],
    560       'config_GetListTags_ExcludeUnusedTag' => $this->my_config['amd_GetListTags_ExcludeUnusedTag'],
    561       'config_GetListTags_SelectedTagOnly' => $this->my_config['amd_GetListTags_SelectedTagOnly'],
    562       'config_GetListImages_OrderType' => $this->my_config['amd_GetListImages_OrderType']
     561      'urlRequest' => $this->getAdminLink(),
     562      'config_GetListTags_OrderType' => $this->config['amd_GetListTags_OrderType'],
     563      'config_GetListTags_FilterType' => $this->config['amd_GetListTags_FilterType'],
     564      'config_GetListTags_ExcludeUnusedTag' => $this->config['amd_GetListTags_ExcludeUnusedTag'],
     565      'config_GetListTags_SelectedTagOnly' => $this->config['amd_GetListTags_SelectedTagOnly'],
     566      'config_GetListImages_OrderType' => $this->config['amd_GetListImages_OrderType']
    563567    );
    564568
     
    581585    //$local_tpl = new Template(AMD_PATH."admin/", "");
    582586    $template->set_filename('sheet_page',
    583                   dirname($this->filelocation).'/admin/amd_metadata_display.tpl');
     587                  dirname($this->getFileLocation()).'/admin/amd_metadata_display.tpl');
    584588
    585589
    586590    $datas=array(
    587       'urlRequest' => $this->page_link,
     591      'urlRequest' => $this->getAdminLink(),
    588592      'selectedTags' => Array(),
    589593      'groups' => Array(),
     
    688692
    689693    $datas=array(
    690       'urlRequest' => $this->page_link,
    691       'NumberOfItemsPerRequest' => $this->my_config['amd_NumberOfItemsPerRequest'],
     694      'urlRequest' => $this->getAdminLink(),
     695      'NumberOfItemsPerRequest' => $this->config['amd_NumberOfItemsPerRequest'],
    692696    );
    693697
     
    711715    $template->set_filename('body_page', dirname(__FILE__).'/admin/amd_help.tpl');
    712716
    713     $statTabsheet = new tabsheet('statTabsheet', $this->tabsheet->get_titlename());
     717    $statTabsheet = new GPCTabSheet('statTabsheet', $this->tabsheet->get_titlename(), 'tabsheet2 gcBorder', 'itab2');
    714718    $statTabsheet->select($tab);
    715719    $statTabsheet->add('exif',
    716720                          l10n('g003_help_tab_exif'),
    717                           $this->page_link.'&amp;fAMD_tabsheet=help&amp;fAMD_page=exif');
     721                          $this->getAdminLink().'&amp;fAMD_tabsheet=help&amp;fAMD_page=exif');
    718722    $statTabsheet->add('iptc',
    719723                          l10n('g003_help_tab_iptc'),
    720                           $this->page_link.'&amp;fAMD_tabsheet=help&amp;fAMD_page=iptc');
     724                          $this->getAdminLink().'&amp;fAMD_tabsheet=help&amp;fAMD_page=iptc');
    721725    $statTabsheet->add('xmp',
    722726                          l10n('g003_help_tab_xmp'),
    723                           $this->page_link.'&amp;fAMD_tabsheet=help&amp;fAMD_page=xmp');
     727                          $this->getAdminLink().'&amp;fAMD_tabsheet=help&amp;fAMD_page=xmp');
    724728    $statTabsheet->add('magic',
    725729                          l10n('g003_help_tab_magic'),
    726                           $this->page_link.'&amp;fAMD_tabsheet=help&amp;fAMD_page=magic');
     730                          $this->getAdminLink().'&amp;fAMD_tabsheet=help&amp;fAMD_page=magic');
    727731    $statTabsheet->assign();
    728732
     
    811815
    812816    $returned="";
    813     $this->my_config['amd_NumberOfItemsPerRequest']=$nbOfItems;
    814     $this->save_config();
     817    $this->config['amd_NumberOfItemsPerRequest']=$nbOfItems;
     818    $this->saveConfig();
    815819
    816820    $sql="SELECT ait.imageId FROM ".$this->tables['images']." ait";
     
    982986  private function ajax_amd_showStatsGetListTags($orderType, $filterType, $excludeUnusedTag, $selectedTagOnly)
    983987  {
    984     $this->my_config['amd_GetListTags_OrderType'] = $orderType;
    985     $this->my_config['amd_GetListTags_FilterType'] = $filterType;
    986     $this->my_config['amd_GetListTags_ExcludeUnusedTag'] = $excludeUnusedTag;
    987     $this->my_config['amd_GetListTags_SelectedTagOnly'] = $selectedTagOnly;
    988     $this->save_config();
     988    global $template;
     989
     990    $this->config['amd_GetListTags_OrderType'] = $orderType;
     991    $this->config['amd_GetListTags_FilterType'] = $filterType;
     992    $this->config['amd_GetListTags_ExcludeUnusedTag'] = $excludeUnusedTag;
     993    $this->config['amd_GetListTags_SelectedTagOnly'] = $selectedTagOnly;
     994    $this->saveConfig();
    989995
    990996    $local_tpl = new Template(AMD_PATH."admin/", "");
    991997    $local_tpl->set_filename('body_page',
    992                   dirname($this->filelocation).'/admin/amd_metadata_select_iListTags.tpl');
     998                  dirname($this->getFileLocation()).'/admin/amd_metadata_select_iListTags.tpl');
    993999
    9941000    $numOfPictures=$this->getNumOfPictures();
     
    10581064    }
    10591065
     1066    $local_tpl->assign('themeconf', Array('name' => $template->get_themeconf('name')));
    10601067    $local_tpl->assign('datas', $datas);
    10611068
     
    10701077  private function ajax_amd_showStatsGetListImages($tagId, $orderType)
    10711078  {
    1072     $this->my_config['amd_GetListImages_OrderType'] = $orderType;
    1073     $this->save_config();
     1079    global $template;
     1080
     1081    $this->config['amd_GetListImages_OrderType'] = $orderType;
     1082    $this->saveConfig();
    10741083
    10751084    $local_tpl = new Template(AMD_PATH."admin/", "");
    10761085    $local_tpl->set_filename('body_page',
    1077                   dirname($this->filelocation).'/admin/amd_metadata_select_iListImages.tpl');
     1086                  dirname($this->getFileLocation()).'/admin/amd_metadata_select_iListImages.tpl');
    10781087
    10791088
     
    11131122    if(count($datas)>0)
    11141123    {
     1124      $local_tpl->assign('themeconf', Array('name' => $template->get_themeconf('name')));
    11151125      $local_tpl->assign('datas', $datas);
    11161126      return($local_tpl->parse('body_page', true));
     
    11531163    {
    11541164      $sql="DELETE FROM ".$this->tables['selected_tags']." st
    1155               USING phpwebgallery_amd_used_tags ut
    1156                 LEFT JOIN phpwebgallery_amd_selected_tags st
     1165              USING ".$this->tables['used_tags']." ut
     1166                LEFT JOIN ".$this->tables['selected_tags']." st
    11571167                  ON ut.tagID = st.tagId
    11581168              WHERE ut.numId = $numId;";
     
    11741184  private function ajax_amd_groupGetTagList($id)
    11751185  {
     1186    global $template;
     1187
    11761188    if($id!="")
    11771189    {
     
    12131225          $local_tpl = new Template(AMD_PATH."admin/", "");
    12141226          $local_tpl->set_filename('body_page',
    1215                         dirname($this->filelocation).'/admin/amd_metadata_display_groupListTagSelect.tpl');
     1227                        dirname($this->getFileLocation()).'/admin/amd_metadata_display_groupListTagSelect.tpl');
     1228          $local_tpl->assign('themeconf', Array('name' => $template->get_themeconf('name')));
    12161229          $local_tpl->assign('datas', $datas);
    12171230          return($local_tpl->parse('body_page', true));
     
    12991312        {
    13001313          $template->set_filename('list_page',
    1301                         dirname($this->filelocation).'/admin/amd_metadata_display_groupListTagOrder.tpl');
     1314                        dirname($this->getFileLocation()).'/admin/amd_metadata_display_groupListTagOrder.tpl');
    13021315          $template->assign('datas', $datas);
    13031316          $template->assign('group', $id);
     
    14321445    $local_tpl = new Template(AMD_PATH."admin/", "");
    14331446    $local_tpl->set_filename('body_page',
    1434                   dirname($this->filelocation).'/admin/amd_metadata_display_groupEdit.tpl');
     1447                  dirname($this->getFileLocation()).'/admin/amd_metadata_display_groupEdit.tpl');
    14351448
    14361449    $datasLang=array(
     
    14901503    //$local_tpl = new Template(AMD_PATH."admin/", "");
    14911504    $template->set_filename('group_list',
    1492                   dirname($this->filelocation).'/admin/amd_metadata_display_groupList.tpl');
     1505                  dirname($this->getFileLocation()).'/admin/amd_metadata_display_groupList.tpl');
    14931506
    14941507
  • extensions/AMetaData/amd_install.class.inc.php

    r5790 r5935  
    3030    {
    3131      parent::__construct($prefixeTable, $filelocation);
    32       $this->tablef= new manage_tables($this->tables);
     32      $this->tablef= new GPCTables($this->tables);
    3333    }
    3434
     
    4646    {
    4747      global $user, $lang;
     48
     49      $this->initConfig();
     50      $this->loadConfig();
     51      $this->config['installed']=AMD_VERSION2;
     52      $this->saveConfig();
    4853
    4954      $tables_def=array(
     
    9095      //$table_def array
    9196      $tables_def = create_table_add_character_set($tables_def);
    92       $result=$this->tablef->create_tables($tables_def);
     97      $result=$this->tablef->create($tables_def);
    9398      unset($tables_def);
    9499
     
    121126    public function uninstall()
    122127    {
    123       $this->delete_config();
    124       $this->tablef->drop_tables();
     128      $this->deleteConfig();
     129      $this->tablef->drop();
    125130    }
    126131
     
    142147      foreach(AMD_JpegMetaData::getTagList(Array('filter' => AMD_JpegMetaData::TAGFILTER_IMPLEMENTED, 'xmp' => true, 'maker' => true, 'iptc' => true)) as $key => $val)
    143148      {
    144         $sql="INSERT INTO ".$this->tables['used_tags']." VALUES('', '".$key."', '".(($val['translatable'])?'y':'n')."', '".$val['name']."', 0, '".L10n::get($val['name'])."');";
     149        $sql="INSERT INTO ".$this->tables['used_tags']." VALUES('', '".$key."', '".(($val['translatable'])?'y':'n')."', '".$val['name']."', 0, '".addslashes(L10n::get($val['name']))."');";
    145150        pwg_query($sql);
    146151      }
     
    154159              LEFT JOIN ".IMAGES_TABLE." ti ON ti.id = tc.element_id
    155160            WHERE tc.user_id = ".$user['id']."
     161              AND ti.id IS NOT NULL
    156162            ORDER BY RAND() LIMIT 25;";
    157163      $result=pwg_query($sql);
     
    207213      }
    208214
    209       $this->init_config();
    210       $this->load_config();
    211       $this->save_config();
     215      $this->initConfig();
     216      $this->loadConfig();
     217      $this->config['installed']=AMD_VERSION2; //update the installed release number
     218      $this->saveConfig();
    212219    }
    213220
  • extensions/AMetaData/amd_pip.class.inc.php

    r5790 r5935  
    2222
    2323include_once('amd_root.class.inc.php');
    24 include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/ajax.class.inc.php');
     24include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/GPCAjax.class.inc.php');
    2525
    2626class AMD_PIP extends AMD_root
    2727{
    28   protected $ajax;
    29 
    3028  function AMD_PIP($prefixeTable, $filelocation)
    3129  {
    3230    parent::__construct($prefixeTable, $filelocation);
    33     $this->ajax = new Ajax();
    3431
    35     $this->load_config();
    36     $this->init_events();
     32    $this->loadConfig();
     33    $this->initEvents();
    3734  }
    3835
     
    4643    initialize events call for the plugin
    4744  */
    48   public function init_events()
     45  public function initEvents()
    4946  {
    50     parent::init_events();
     47    parent::initEvents();
    5148    add_event_handler('loc_begin_picture', array(&$this, 'loadMetadata'));
    5249  }
     
    162159
    163160    if($analyzed=='n' and
    164        $this->my_config['amd_FillDataBaseContinuously']=='y' and
    165        $this->my_config['amd_AllPicturesAreAnalyzed']=='n')
     161       $this->config['amd_FillDataBaseContinuously']=='y' and
     162       $this->config['amd_AllPicturesAreAnalyzed']=='n')
    166163    {
    167164      /* if picture is not analyzed, do analyze
  • extensions/AMetaData/amd_root.class.inc.php

    r5790 r5935  
    2121if (!defined('PHPWG_ROOT_PATH')) { die('Hacking attempt!'); }
    2222
    23 include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/common_plugin.class.inc.php');
    24 include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/css.class.inc.php');
     23include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/CommonPlugin.class.inc.php');
     24include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/GPCCss.class.inc.php');
    2525
    2626include_once('amd_jpegmetadata.class.inc.php');
     
    2828include_once(JPEG_METADATA_DIR."TagDefinitions/XmpTags.class.php");
    2929
    30 class AMD_root extends common_plugin
     30class AMD_root extends CommonPlugin
    3131{
    3232  protected $css;   //the css object
     
    3636  {
    3737    global $user;
    38     $this->plugin_name="AMetaData";
    39     $this->plugin_name_files="amd";
     38    $this->setPluginName("AMetaData");
     39    $this->setPluginNameFiles("amd");
    4040    parent::__construct($prefixeTable, $filelocation);
    4141
    4242    $tableList=array('used_tags', 'images_tags', 'images', 'selected_tags', 'groups_names', 'groups');
    43     $this->set_tables_list($tableList);
    44 
    45     $this->css = new css(dirname($this->filelocation).'/'.$this->plugin_name_files.".css");
     43    $this->setTablesList($tableList);
     44
     45    $this->css = new GPCCss(dirname($this->getFileLocation()).'/'.$this->getPluginNameFiles().".css");
    4646    $this->jpegMD=new AMD_JpegMetaData();
    4747
     
    6464  --------------------------------------------------------------------------- */
    6565
    66   /* this function initialize var $my_config with default values */
    67   public function init_config()
    68   {
    69     $this->my_config=array(
     66  /* this function initialize var $config with default values */
     67  public function initConfig()
     68  {
     69    $this->config=array(
    7070      'amd_NumberOfItemsPerRequest' => 25,
    7171      'amd_GetListTags_OrderType' => "tag",
     
    7979  }
    8080
    81   public function load_config()
    82   {
    83     parent::load_config();
    84   }
    85 
    86   public function init_events()
    87   {
    88     parent::init_events();
     81  public function loadConfig()
     82  {
     83    parent::loadConfig();
     84  }
     85
     86  public function initEvents()
     87  {
     88    parent::initEvents();
    8989
    9090
    9191    if(!isset($_REQUEST['ajaxfct']) and
    92        $this->my_config['amd_FillDataBaseContinuously']=='y' and
    93        $this->my_config['amd_AllPicturesAreAnalyzed']=='n')
     92       $this->config['amd_FillDataBaseContinuously']=='y' and
     93       $this->config['amd_AllPicturesAreAnalyzed']=='n')
    9494    {
    9595      /* do analyze for a random picture only if :
     
    270270      while($row=mysql_fetch_assoc($result))
    271271      {
    272         $this->my_config['amd_AllPicturesAreAnalyzed']=($row['nb']==0)?'y':'n';
    273       }
    274 
    275     }
    276     $this->save_config();
     272        $this->config['amd_AllPicturesAreAnalyzed']=($row['nb']==0)?'y':'n';
     273      }
     274
     275    }
     276    $this->saveConfig();
    277277  }
    278278
  • extensions/AMetaData/main.inc.php

    r5791 r5935  
    22/*
    33Plugin Name: Advanced MetaData
    4 Version: 0.3b
     4Version: 0.4b
    55Description: An advanced metadata manager
    6 Plugin URI: http://phpwebgallery.net/ext/extension_view.php?eid=364
    7 Author: Piwigo team
    8 Author URI: http://piwigo.org
     6Plugin URI: http://piwigo.org/ext/extension_view.php?eid=364
     7Author: grum@piwigo.org
     8Author URI: http://photos.grum.fr/
    99*/
    1010
     
    2626| 0.2b    | 2010/03/23 | * beta release
    2727| 0.3b    | 2010/04/11 | * beta release
     28| 0.4b    | 2010/04/18 | * beta release for Piwigo 2.1
    2829|         |            |
    2930|         |            |
     
    4647
    4748// pour faciliter le debug - make debug easier :o)
    48 ini_set('error_reporting', E_ALL);
    49 ini_set('display_errors', true);
     49// ini_set('error_reporting', E_ALL);
     50// ini_set('display_errors', true);
    5051
    5152if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
     
    5455define('AMD_PATH' , PHPWG_PLUGINS_PATH . AMD_DIR . '/');
    5556
    56 define('AMD_VERSION' , '0.3b'); //=> ne pas oublier la version dans l'entête !!
     57include_once('amd_version.inc.php'); // => Don't forget to update this file !!
    5758
    5859global $prefixeTable, $page;
     
    6465  include_once("amd_aim.class.inc.php");
    6566  $obj = new AMD_AIM($prefixeTable, __FILE__);
    66   $obj->init_events();
     67  $obj->initEvents();
    6768  set_plugin_data($plugin['id'], $obj);
    6869}
  • extensions/AMetaData/maintain.inc.php

    r4905 r5935  
    2020//ini_set('display_errors', true);
    2121
     22include_once('amd_version.inc.php'); // => Don't forget to update this file !!
     23
     24
    2225defined('AMD_DIR') || define('AMD_DIR' , basename(dirname(__FILE__)));
    2326defined('AMD_PATH') || define('AMD_PATH' , PHPWG_PLUGINS_PATH . AMD_DIR . '/');
    24 @include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/tables.class.inc.php');
     27include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/GPCCore.class.inc.php');
     28include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/GPCTables.class.inc.php');
    2529
    2630
    27 global $gpc_installed, $lang; //needed for plugin manager compatibility
     31global $gpc_installed, $gpcNeeded, $lang; //needed for plugin manager compatibility
    2832
    2933/* -----------------------------------------------------------------------------
    30 AMD needs the Grum Plugin Classe
    31 ----------------------------------------------------------------------------- */
     34 * AMD needs the Grum Plugin Classe
     35 * -------------------------------------------------------------------------- */
    3236$gpc_installed=false;
    33 if(file_exists(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/common_plugin.class.inc.php'))
     37$gpcNeeded="3.0.0";
     38if(file_exists(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/CommonPlugin.class.inc.php'))
    3439{
    35   @include_once(PHPWG_PLUGINS_PATH.'grum_plugins_classes-2/main.inc.php');
    36   // need GPC release greater or equal than 2.0.4
    37 
    38   if(checkGPCRelease(2,0,4))
     40  @include_once(PHPWG_PLUGINS_PATH.'GrumPluginClasses/classes/CommonPlugin.class.inc.php');
     41  // need GPC release greater or equal than 3.0.0
     42  if(CommonPlugin::checkGPCRelease(3,0,0))
    3943  {
    4044    @include_once("amd_install.class.inc.php");
     
    4549function gpcMsgError(&$errors)
    4650{
    47   array_push($errors, sprintf(l10n('Grum Plugin Classes is not installed (release >= %s)'), "2.0.4"));
     51  global $gpcNeeded;
     52  $msg=sprintf(l10n('To install this plugin, you need to install Grum Plugin Classes %s before'), $gpcNeeded);
     53  if(is_array($errors))
     54  {
     55    array_push($errors, $msg);
     56  }
     57  else
     58  {
     59    $errors=Array($msg);
     60  }
    4861}
    4962// -----------------------------------------------------------------------------
     
    5568function plugin_install($plugin_id, $plugin_version, &$errors)
    5669{
    57   global $prefixeTable, $gpc_installed;
     70  global $prefixeTable, $gpc_installed, $gpcNeeded;
    5871  if($gpc_installed)
    5972  {
    6073    $amd=new AMD_install($prefixeTable, __FILE__);
    6174    $result=$amd->install();
     75    GPCCore::register($amd->getPluginName(), AMD_VERSION, $gpcNeeded);
    6276  }
    6377  else
     
    8195function plugin_uninstall($plugin_id)
    8296{
    83   global $prefixeTable, $gpc_installed;
     97  global $prefixeTable, $gpc_installed, $gpcNeeded;
    8498  if($gpc_installed)
    8599  {
    86100    $amd=new AMD_install($prefixeTable, __FILE__);
    87101    $result=$amd->uninstall();
     102    GPCCore::unregister($amd->getPluginName());
    88103  }
    89104  else
Note: See TracChangeset for help on using the changeset viewer.