aboutsummaryrefslogtreecommitdiffstats
path: root/include/comanche.php
diff options
context:
space:
mode:
Diffstat (limited to 'include/comanche.php')
-rw-r--r--include/comanche.php47
1 files changed, 33 insertions, 14 deletions
diff --git a/include/comanche.php b/include/comanche.php
index 4af081740..83e9af438 100644
--- a/include/comanche.php
+++ b/include/comanche.php
@@ -97,9 +97,11 @@ function comanche_parser(&$a,$s) {
function comanche_menu($name,$class = '') {
- $a = get_app();
- $m = menu_fetch($name,$a->profile['profile_uid'],get_observer_hash());
- return menu_render($m,$class);
+ $channel_id = comanche_get_channel_id();
+ if($channel_id) {
+ $m = menu_fetch($name,$channel_id,get_observer_hash());
+ return menu_render($m,$class);
+ }
}
function comanche_replace_region($match) {
@@ -109,20 +111,37 @@ function comanche_replace_region($match) {
}
}
+/**
+ * @function comanche_get_channel_id()
+ * Returns the channel_id of the profile owner of the page, or the local_user if there is no profile owner.
+ * Otherwise returns 0
+ */
+
+function comanche_get_channel_id() {
+ $channel_id = ((is_array(get_app()->profile)) ? get_app()->profile['profile_uid'] : 0);
+ if((! $channel_id) && (local_user()))
+ $channel_id = local_user();
+ return $channel_id;
+}
+
function comanche_block($name) {
+
+ $channel_id = comanche_get_channel_id();
- $o = '';
- $r = q("select * from item inner join item_id on iid = item.id and item_id.uid = item.uid and item.uid = %d and service = 'BUILDBLOCK' and sid = '%s' limit 1",
- intval(get_app()->profile['profile_uid']),
- dbesc($name)
- );
- if($r) {
- $o = '<div class="widget bblock">';
- if($r[0]['title'])
- $o .= '<h3>' . $r[0]['title'] . '</h3>';
- $o .= prepare_text($r[0]['body'],$r[0]['mimetype']);
- $o .= '</div>';
+ if($channel_id) {
+ $o = '';
+ $r = q("select * from item inner join item_id on iid = item.id and item_id.uid = item.uid and item.uid = %d and service = 'BUILDBLOCK' and sid = '%s' limit 1",
+ intval($channel_id),
+ dbesc($name)
+ );
+ if($r) {
+ $o = '<div class="widget bblock">';
+ if($r[0]['title'])
+ $o .= '<h3>' . $r[0]['title'] . '</h3>';
+ $o .= prepare_text($r[0]['body'],$r[0]['mimetype']);
+ $o .= '</div>';
+ }
}
return $o;
}