source: extensions/PWG_Stuffs/trunk/main.inc.php @ 15244

Last change on this file since 15244 was 12524, checked in by patdenice, 13 years ago

Lastcom actions works even if block is set only on home page.

File size: 2.5 KB
Line 
1<?php
2/*
3Plugin Name: PWG Stuffs
4Version: auto
5Description: Insert modules on your gallery
6Plugin URI: http://piwigo.org/ext/extension_view.php?eid=190
7Author: P@t
8Author URI: http://www.gauchon.com
9*/
10
11if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
12
13global $prefixeTable, $conf;
14
15$conf['Stuffs'] = @unserialize($conf['PWG_Stuffs']);
16
17define('STUFFS_DIR' , basename(dirname(__FILE__)));
18define('STUFFS_PATH' , PHPWG_PLUGINS_PATH . STUFFS_DIR . '/');
19define('STUFFS_TABLE' , $prefixeTable . 'stuffs');
20
21// Need upgrade?
22if ($conf['Stuffs'] === false)
23  include('admin/upgrade.inc.php');
24
25function stuffs_admin_menu($menu)
26{
27  global $conf;
28
29  array_push($menu, array(
30    'NAME' => 'PWG Stuffs',
31    'URL' => get_root_url().'admin.php?page=plugin-'.STUFFS_DIR
32    )
33  );
34  return $menu;
35}
36
37function load_stuffs()
38{
39  global $template, $conf;
40
41  include(STUFFS_PATH . 'class.inc.php');
42  include(STUFFS_PATH . 'functions.inc.php');
43
44  $template->set_template_dir(STUFFS_PATH.'theme/template/');
45  $template->set_filename('stuffs', 'stuffs_blocks.tpl');
46  $template->assign('SHOW_THUMBNAIL_CAPTION', $conf['show_thumbnail_caption']);
47
48  $stuffs = new stuffs();
49
50  if (!empty($stuffs->blocks['begin']))
51  {
52    $template->assign('blocks', $stuffs->blocks['begin']);
53    $template->concat($stuffs->prefixe.'BEFORE',  $template->parse('stuffs', true));
54  }
55  if (!empty($stuffs->blocks['end']))
56  {
57    $template->assign('blocks', $stuffs->blocks['end']);
58    $template->concat($stuffs->prefixe.'AFTER',  $template->parse('stuffs', true));
59  }
60}
61
62function stuffs_section_init()
63{
64  global $tokens, $page;
65
66  switch (script_basename())
67  {
68    case 'picture':
69      $page['stuffs_section'] = 'on_picture';
70      break;
71
72    case 'index':
73      $actions = array('delete_comment', 'validate_comment', 'edit_comment', '');
74      if (count($tokens) == 1 and in_array($tokens[0], $actions))
75      {
76        $page['stuffs_section'] = 'on_home';
77        break;
78      }
79      elseif (isset($page['section']) and $page['section'] == 'categories')
80      {
81        $page['stuffs_section'] = isset($page['category']) ? 'on_cats' : 'on_root';
82        break;
83      }
84
85      default: return;
86  }
87
88  add_event_handler('loc_begin_index', 'load_stuffs');
89  add_event_handler('loc_begin_picture', 'load_stuffs');
90}
91
92add_event_handler('get_admin_plugin_menu_links', 'stuffs_admin_menu');
93add_event_handler('loc_end_section_init', 'stuffs_section_init', 60);
94
95?>
Note: See TracBrowser for help on using the repository browser.