source: extensions/ContactForm/main.inc.php @ 27656

Last change on this file since 27656 was 25872, checked in by mistic100, 11 years ago

update for 2.6

File size: 2.4 KB
RevLine 
[6547]1<?php
2/*
[7135]3Plugin Name: Contact Form
[8909]4Version: auto
[7135]5Description: Add a "Contact" item in the Menu block to offer a contact form to users
[23375]6Plugin URI: auto
[17483]7Author: Piwigo Team
8Author URI: http://piwigo.org
[6547]9*/
10
11if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
12
[17945]13global $prefixeTable;
[6547]14
[17945]15defined('CONTACT_FORM_ID') or define('CONTACT_FORM_ID', basename(dirname(__FILE__)));
16define('CONTACT_FORM_PATH',    PHPWG_PLUGINS_PATH . CONTACT_FORM_ID . '/');
17define('CONTACT_FORM_ADMIN',   get_root_url() . 'admin.php?page=plugin-' . CONTACT_FORM_ID);
18define('CONTACT_FORM_PUBLIC',  get_absolute_root_url() . make_index_url(array('section' => 'contact')) . '/');
19define('CONTACT_FORM_TABLE',   $prefixeTable .'contact_form');
[18315]20define('CONTACT_FORM_VERSION', 'auto');
[17483]21
[17945]22
[17483]23add_event_handler('init', 'contact_form_init');
[17658]24
[17483]25if (defined('IN_ADMIN'))
26{
27  add_event_handler('get_admin_plugin_menu_links', 'contact_form_admin_menu');
[6547]28}
[17945]29else
30{
31  add_event_handler('loc_end_section_init', 'contact_form_section_init');
32  add_event_handler('loc_end_index', 'contact_form_page');
33}
[17483]34
[25872]35add_event_handler('blockmanager_apply', 'contact_form_applymenu', EVENT_HANDLER_PRIORITY_NEUTRAL+10);
36add_event_handler('before_parse_mail_template', 'contact_form_mail_template', EVENT_HANDLER_PRIORITY_NEUTRAL, 2);
37
[17483]38include(CONTACT_FORM_PATH . 'include/functions.inc.php');
39
40
[17658]41/**
42 * update & unserialize conf & load language & init emails
43 */
[17483]44function contact_form_init()
45{
[23207]46  global $conf, $template, $pwg_loaded_plugins;
[25872]47
48  include_once(CONTACT_FORM_PATH . 'maintain.inc.php');
49  $maintain = new ContactForm_maintain(CONTACT_FORM_ID);
50  $maintain->autoUpdate(CONTACT_FORM_VERSION, 'install');
51
[17483]52  $conf['ContactForm'] = unserialize($conf['ContactForm']);
53  load_language('plugin.lang', CONTACT_FORM_PATH);
[18891]54  load_language('lang', PHPWG_ROOT_PATH.PWG_LOCAL_DIR, array('no_fallback'=>true, 'local'=>true));
[25872]55
[17483]56  if ($conf['ContactForm']['cf_must_initialize'])
57  {
58    contact_form_initialize_emails();
59  }
[25872]60
61  $conf['ContactForm_ready'] = count(get_contact_emails());
62
63  if ($conf['ContactForm_ready'] && (!is_a_guest() || $conf['ContactForm']['cf_allow_guest']))
[24347]64  {
[25872]65    $template->assign(array(
66      'CONTACT_MAIL' => true,
67      'CONTACT_FORM_PUBLIC' => CONTACT_FORM_PUBLIC,
68      ));
[24347]69    $template->set_prefilter('tail', 'contact_form_footer_link');
70  }
[17483]71}
72
[17658]73/**
[25872]74 * admin plugins menu link
[17658]75 */
[25872]76function contact_form_admin_menu($menu)
[17658]77{
[25872]78  $menu[] = array(
[17658]79    'URL' => CONTACT_FORM_ADMIN,
80    'NAME' => 'Contact Form',
[25872]81  );
[17658]82  return $menu;
83}
Note: See TracBrowser for help on using the repository browser.