mirror of
https://github.com/e107inc/e107.git
synced 2025-06-07 11:28:22 +02:00
New e_event.php v2.x specification. (e_module is no longer required for registering events.) Example added to e107_plugins/_blank
This commit is contained in:
parent
8143469f5c
commit
6d0aa7cdd9
@ -2064,7 +2064,7 @@ class e107
|
||||
|
||||
$elist = self::getPref($filename.'_list');
|
||||
|
||||
if($elist)
|
||||
if(!empty($elist))
|
||||
{
|
||||
foreach(array_keys($elist) as $key)
|
||||
{
|
||||
@ -2117,6 +2117,7 @@ class e107
|
||||
{
|
||||
if(E107_DBG_INCLUDES)
|
||||
{
|
||||
//$debug_backtrace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 6);
|
||||
$mes->addDebug('Executing <strong>'.$class_name.' :: '.$method_name.'()</strong>');
|
||||
}
|
||||
return call_user_func(array($obj, $method_name),$param, $param2);
|
||||
@ -2856,7 +2857,12 @@ class e107
|
||||
$key = $tmp[1];
|
||||
}
|
||||
|
||||
$tmp = e107::getAddonConfig('e_url');
|
||||
if(!$tmp = self::getRegistry('core/e107/addons/e_url'))
|
||||
{
|
||||
$tmp = e107::getAddonConfig('e_url');
|
||||
self::setRegistry('core/e107/addons/e_url',$tmp);
|
||||
}
|
||||
|
||||
$tp = e107::getParser();
|
||||
|
||||
$pref = self::getPref('e_url_alias');
|
||||
@ -3866,7 +3872,7 @@ class e107
|
||||
{
|
||||
define('e_LOGIN', SITEURL.(file_exists(e_BASE.'customlogin.php') ? 'customlogin.php' : 'login.php'));
|
||||
}
|
||||
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
|
@ -36,6 +36,26 @@ class e107_event
|
||||
function __construct()
|
||||
{
|
||||
|
||||
$temp = e107::getAddonConfig('e_event');
|
||||
|
||||
if(!empty($temp))
|
||||
{
|
||||
foreach($temp as $plug=>$data)
|
||||
{
|
||||
foreach($data as $event)
|
||||
{
|
||||
$name = $event['name'];
|
||||
$class = array($plug."_event", $event['function']);
|
||||
|
||||
if(!empty($name) && !empty($event['function']))
|
||||
{
|
||||
$this->register($name, $class);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
51
e107_plugins/_blank/e_event.php
Normal file
51
e107_plugins/_blank/e_event.php
Normal file
@ -0,0 +1,51 @@
|
||||
<?php
|
||||
/*
|
||||
* e107 website system
|
||||
*
|
||||
* Copyright (C) 2008-2013 e107 Inc (e107.org)
|
||||
* Released under the terms and conditions of the
|
||||
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
|
||||
* XXX HIGHLY EXPERIMENTAL AND SUBJECT TO CHANGE WITHOUT NOTICE.
|
||||
*/
|
||||
|
||||
if (!defined('e107_INIT')) { exit; }
|
||||
|
||||
|
||||
class _blank_event // plugin-folder + '_event'
|
||||
{
|
||||
|
||||
/**
|
||||
* Configure functions/methods to run when specific e107 events are triggered.
|
||||
* For a list of events, please visit: http://e107.org/developer-manual/classes-and-methods#events
|
||||
* Developers can trigger their own events using: e107::getEvent()->trigger('plugin_event',$array);
|
||||
* Where 'plugin' is the folder of their plugin and 'event' is a unique name of the event.
|
||||
* $array is data which is sent to the triggered function. eg. myfunction($array) in the example below.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function config()
|
||||
{
|
||||
|
||||
$event = array();
|
||||
|
||||
$event[] = array(
|
||||
'name' => "login", // when this is triggered... (see http://e107.org/developer-manual/classes-and-methods#events)
|
||||
'function' => "myfunction", // ..run this function (see below).
|
||||
);
|
||||
|
||||
return $event;
|
||||
|
||||
}
|
||||
|
||||
|
||||
function myfunction($data) // the method to run.
|
||||
{
|
||||
print_a($data);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} //end class
|
||||
|
@ -107,7 +107,7 @@ class social_shortcodes extends e_shortcode
|
||||
if($data['href'] != '')
|
||||
{
|
||||
|
||||
$text .= '<a rel="external" href="'.$data['href'].'" data-tooltip-position="'.$tooltipPos.'" class="'.$tooltip.' social-icon social-'.$id.'" title="'.$data['title'].'"><span class="fa fa-'.$id.' '.$class.'"></span></a>';
|
||||
$text .= '<a rel="external" href="'.$data['href'].'" data-tooltip-position="'.$tooltipPos.'" class="'.$tooltip.' social-icon social-'.$id.'" title="'.$data['title'].'"><span class="fa fa-fw fa-'.$id.' '.$class.'"></span></a>';
|
||||
$text .= "\n";
|
||||
}
|
||||
}
|
||||
@ -288,7 +288,7 @@ class social_shortcodes extends e_shortcode
|
||||
|
||||
|
||||
|
||||
$opt[$k] = "<a class='".$tooltip." btn ".$butSize." btn-default social-share' target='_blank' title='".$val["title"]."' href='".$shareUrl."'>".$tp->toIcon($val["icon"])."</a>";
|
||||
$opt[$k] = "<a class='".$tooltip." btn ".$butSize." btn-default social-share' target='_blank' title='".$val["title"]."' href='".$shareUrl."'>".$tp->toIcon($val["icon"], array('fw'=>1))."</a>";
|
||||
}
|
||||
|
||||
// Show only Email, Facebook, Twitter and Google.
|
||||
|
Loading…
x
Reference in New Issue
Block a user