[geeklog-cvs] geeklog: Added support for displaying dynamic blocks on Blocks A...
geeklog-cvs at lists.geeklog.net
geeklog-cvs at lists.geeklog.net
Tue Mar 20 12:34:25 EDT 2012
changeset 8541:3a159d1973f2
url: http://project.geeklog.net/cgi-bin/hgwebdir.cgi/geeklog/rev/3a159d1973f2
user: Tom <websitemaster at cogeco.net>
date: Tue Mar 20 12:10:54 2012 -0400
description:
Added support for displaying dynamic blocks on Blocks Admin Editor
diffstat:
plugins/calendar/functions.inc | 48 ++++++++++++++++++++++++++++++++++++++++-
plugins/polls/functions.inc | 47 +++++++++++++++++++++++++++++++++++++++-
2 files changed, 91 insertions(+), 4 deletions(-)
diffs (135 lines):
diff -r d829dcdc89d7 -r 3a159d1973f2 plugins/calendar/functions.inc
--- a/plugins/calendar/functions.inc Tue Mar 20 12:09:26 2012 -0400
+++ b/plugins/calendar/functions.inc Tue Mar 20 12:10:54 2012 -0400
@@ -2158,10 +2158,11 @@
if ($_CA_CONF['block_enable'] && SEC_hasAccess($owner_id, $_CA_CONF['block_group_id'], $_CA_CONF['block_permissions'][0], $_CA_CONF['block_permissions'][1], $_CA_CONF['block_permissions'][2], $_CA_CONF['block_permissions'][3])) {
// Check if right topic
if (($_CA_CONF['block_topic_option'] == TOPIC_ALL_OPTION) || ($_CA_CONF['block_topic_option'] == TOPIC_HOMEONLY_OPTION && COM_onFrontpage()) || ($_CA_CONF['block_topic_option'] == TOPIC_SELECTED_OPTION && in_array($topic, $_CA_CONF['block_topic']))) {
- if (($side=='left' && $_CA_CONF['block_isleft'] == 1) || ($side=='right' && $_CA_CONF['block_isleft'] == 0)) { // Create a block
+ if (($side=='left' && $_CA_CONF['block_isleft'] == 1) || ($side=='right' && $_CA_CONF['block_isleft'] == 0)) {
+ // Create a block
$display = phpblock_calendar();
- $retval[] = array('name' => 'polls',
+ $retval[] = array('name' => 'events',
'type' => 'dynamic',
'onleft' => $_CA_CONF['block_isleft'],
'title' => $LANG_CAL_1[50],
@@ -2176,6 +2177,49 @@
return $retval;
}
+
+/**
+* Gets config information for dynamic blocks from plugins
+*
+* Returns data for blocks on a given side and, potentially, for
+* a given topic.
+*
+* @param string $side Side to get blocks for (right or left for now)
+* @param string $topic Only get blocks for this topic
+* @return array array of block data
+* @link http://wiki.geeklog.net/index.php/Dynamic_Blocks
+*
+*/
+function plugin_getBlocksConfig_calendar($side, $topic='')
+{
+ global $_TABLES, $_CONF, $_CA_CONF, $LANG_CAL_1;
+
+ $retval = array();
+
+ $owner_id = SEC_getDefaultRootUser();
+
+ // Check permissions first
+ if (SEC_hasAccess($owner_id, $_CA_CONF['block_group_id'], $_CA_CONF['block_permissions'][0], $_CA_CONF['block_permissions'][1], $_CA_CONF['block_permissions'][2], $_CA_CONF['block_permissions'][3])) {
+ if (($side=='left' && $_CA_CONF['block_isleft'] == 1) || ($side=='right' && $_CA_CONF['block_isleft'] == 0)) {
+ $retval[] = array('plugin' => $LANG_CAL_1[16],
+ 'name' => 'events',
+ 'title' => $LANG_CAL_1[50],
+ 'type' => 'dynamic',
+ 'onleft' => $_CA_CONF['block_isleft'],
+ 'blockorder' => $_CA_CONF['block_order'],
+ 'allow_autotags' => false,
+ 'help' => '',
+ 'enable' => $_CA_CONF['block_enable'],
+ 'topic_option' => $_CA_CONF['block_topic_option'],
+ 'topic' => $_CA_CONF['block_topic'],
+ 'inherit' => array()
+ );
+ }
+ }
+
+ return $retval;
+}
+
/**
* This function is called to inform plugins when a group's information has
* changed or a new group has been created.
diff -r d829dcdc89d7 -r 3a159d1973f2 plugins/polls/functions.inc
--- a/plugins/polls/functions.inc Tue Mar 20 12:09:26 2012 -0400
+++ b/plugins/polls/functions.inc Tue Mar 20 12:10:54 2012 -0400
@@ -1774,12 +1774,13 @@
$retval = array();
$owner_id = SEC_getDefaultRootUser();
-
+
// Check permissions first
if ($_PO_CONF['block_enable'] && SEC_hasAccess($owner_id, $_PO_CONF['block_group_id'], $_PO_CONF['block_permissions'][0], $_PO_CONF['block_permissions'][1], $_PO_CONF['block_permissions'][2], $_PO_CONF['block_permissions'][3])) {
// Check if right topic
if (($_PO_CONF['block_topic_option'] == TOPIC_ALL_OPTION) || ($_PO_CONF['block_topic_option'] == TOPIC_HOMEONLY_OPTION && COM_onFrontpage()) || ($_PO_CONF['block_topic_option'] == TOPIC_SELECTED_OPTION && in_array($topic, $_PO_CONF['block_topic']))) {
- if (($side=='left' && $_PO_CONF['block_isleft'] == 1) || ($side=='right' && $_PO_CONF['block_isleft'] == 0)) { // Create a block
+ if (($side=='left' && $_PO_CONF['block_isleft'] == 1) || ($side=='right' && $_PO_CONF['block_isleft'] == 0)) {
+ // Create a block
$display = phpblock_polls();
$retval[] = array('name' => 'polls',
@@ -1798,6 +1799,48 @@
}
/**
+* Gets config information for dynamic blocks from plugins
+*
+* Returns data for blocks on a given side and, potentially, for
+* a given topic.
+*
+* @param string $side Side to get blocks for (right or left for now)
+* @param string $topic Only get blocks for this topic
+* @return array array of block data
+* @link http://wiki.geeklog.net/index.php/Dynamic_Blocks
+*
+*/
+function plugin_getBlocksConfig_polls($side, $topic='')
+{
+ global $_TABLES, $_CONF, $_PO_CONF, $LANG_POLLS;
+
+ $retval = array();
+
+ $owner_id = SEC_getDefaultRootUser();
+
+ // Check permissions first
+ if (SEC_hasAccess($owner_id, $_PO_CONF['block_group_id'], $_PO_CONF['block_permissions'][0], $_PO_CONF['block_permissions'][1], $_PO_CONF['block_permissions'][2], $_PO_CONF['block_permissions'][3])) {
+ if (($side=='left' && $_PO_CONF['block_isleft'] == 1) || ($side=='right' && $_PO_CONF['block_isleft'] == 0)) {
+ $retval[] = array('plugin' => $LANG_POLLS['polls'],
+ 'name' => 'polls',
+ 'title' => $LANG_POLLS['poll'],
+ 'type' => 'dynamic',
+ 'onleft' => $_PO_CONF['block_isleft'],
+ 'blockorder' => $_PO_CONF['block_order'],
+ 'allow_autotags' => false,
+ 'help' => '',
+ 'enable' => $_PO_CONF['block_enable'],
+ 'topic_option' => $_PO_CONF['block_topic_option'],
+ 'topic' => $_PO_CONF['block_topic'],
+ 'inherit' => array()
+ );
+ }
+ }
+
+ return $retval;
+}
+
+/**
* This function is called to inform plugins when a group's information has
* changed or a new group has been created.
*
More information about the geeklog-cvs
mailing list