-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added the alert and UserCP functions.
- Loading branch information
Showing
4 changed files
with
322 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -35,4 +35,4 @@ protected function getResult() | |
{ | ||
return $this->data; | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,251 @@ | ||
<?php | ||
/* | ||
AtomBB Alerts System Functions | ||
Created by Azareal. | ||
Licensed under the terms of the GPLv3. | ||
Copyright Azareal (c) 2012 - 2017 | ||
*/ | ||
|
||
// Is someone trying to access this directly? | ||
if(!defined("HADRON_START")) die("You are not allowed to access this file directly."); | ||
|
||
function alerts_parse(array $item) | ||
{ | ||
global $lang, $plugins; | ||
switch($item['resourceType']) | ||
{ | ||
case "topic": return alerts_parse_topic($item); break; | ||
case "post": return alerts_parse_post($item); break; | ||
case "comment": return alerts_parse_comment($item); break; | ||
|
||
default: | ||
if(($res = $plugins->hook('alerts_parse_type_default', $item))!==null) return $res; | ||
return false; | ||
} | ||
} | ||
|
||
function alerts_parse_topic(array $item) | ||
{ | ||
global $main, $lang, $plugins; | ||
|
||
switch($item['event']) | ||
{ | ||
case "new_topic": | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
|
||
return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/thread.php?tid={$item['resourceID']}", | ||
"langstring" => $lang->sub('alerts_topic_new', $puser) | ||
); | ||
break; | ||
|
||
case "deleted_topic": | ||
global $db; | ||
$topic = $db->get("*","threads","tid='{$item['resourceID']}'",1); | ||
if(!$topic) $topic = array("thread_name" => "Deleted Topic"); | ||
return array("target" => null,"langstring" => $lang->sub('alerts_topic_deleted', $topic['thread_name'])); | ||
break; | ||
|
||
case "reply_topic": | ||
global $db; | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
$post = $db->get("*","posts","pid='{$item['resourceID']}'",1); | ||
if(!$post) return false; | ||
$topic = $db->get("*","threads","tid='{$post['tid']}'",1); | ||
if(!$topic) return false; | ||
return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/thread.php?tid={$topic['tid']}&pid={$post['pid']}", | ||
"langstring" => $lang->multi_sub('alerts_topic_reply', array($puser, $topic['thread_name'])) | ||
); | ||
break; | ||
|
||
default: | ||
if(($res = $plugins->hook('alerts_parse_topic_default', $item))!==null) return $res; | ||
return false; | ||
} | ||
} | ||
|
||
function alerts_parse_post(array $item) | ||
{ | ||
global $main, $lang, $plugins; | ||
switch($item['event']) | ||
{ | ||
case "deleted_post": | ||
$topic = $db->get("*","threads","tid='{$item['areaID']}'",1); | ||
if(!$topic) $topic = array("thread_name" => "Deleted Topic"); | ||
if($post['postedby']==$main->user['uid']) return array( | ||
"target" => null, | ||
"langstring" => $lang->sub('alerts_post_deleted_yours', $topic['thread_name']) | ||
); | ||
else return array( | ||
"target" => null, | ||
"langstring" => $lang->sub('alerts_post_deleted', $topic['thread_name']) | ||
); | ||
break; | ||
|
||
case "reply_post": | ||
$post = $db->get("*","posts","pid='{$item['resourceID']}'",1); | ||
if(!$post) return false; | ||
$topic = $db->get("*","threads","tid='{$item['areaID']}'",1); | ||
if(!$topic) return false; | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
|
||
// Does the user have an avatar? | ||
$avatar = getAvatar($user); | ||
if($post['postedby']==$main->user['uid']) return array( | ||
"avatar" => $avatar, | ||
"target" => "//{$main->settings['site_url']}/thread.php?tid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_post_reply_yours', array($puser, $topic['thread_name'])) | ||
); | ||
else return array( | ||
"avatar" => $avatar, | ||
"target" => "//{$main->settings['site_url']}/thread.php?tid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_post_reply', array($puser, $topic['thread_name'])) | ||
); | ||
break; | ||
|
||
case "reply_topic": | ||
global $db; | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
$post = $db->get("*","posts","pid='{$item['resourceID']}'",1); | ||
if(!$post) return false; | ||
$topic = $db->get("*","threads","tid='{$post['tid']}'",1); | ||
if(!$topic) return false; | ||
return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/thread.php?tid={$topic['tid']}&pid={$post['pid']}", | ||
"langstring" => $lang->multi_sub('alerts_topic_reply', array($puser, $topic['thread_name'])) | ||
); | ||
break; | ||
|
||
case "upvote": | ||
global $db; | ||
$post = $db->get("*","posts","pid='{$item['resourceID']}'",1); | ||
if(!$post) return false; | ||
$topic = $db->get("*","threads","tid='{$post['tid']}'",1); | ||
if(!$topic) return false; | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
if($post['postedby']==$main->user['uid']) return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/thread.php?tid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_post_upvote_yours', array($puser, $topic['thread_name'])) | ||
); | ||
else | ||
{ | ||
$user2 = getUser($post['postedby'], true); | ||
$puser2 = "<![CDATA[".markup($user2['displayname'], $user2['style_start'], $user2['style_end'], $user2['is_multi_colour'])."]]>"; | ||
return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/thread.php?tid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_post_upvote', array($puser, $puser2, $topic['thread_name'])) | ||
); | ||
} | ||
break; | ||
|
||
case "post_mentioned": | ||
global $db; | ||
$post = $db->get("*","posts","pid='{$item['resourceID']}'",1); | ||
if(!$post) return false; | ||
$topic = $db->get("*","threads","tid='{$post['tid']}'",1); | ||
if(!$topic) return false; | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/thread.php?tid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_post_mentioned', array($puser, $topic['thread_name'])) | ||
); | ||
break; | ||
|
||
default: | ||
if(($res = $plugins->hook('alerts_parse_post_default', $item))!==null) return $res; | ||
return false; | ||
} | ||
} | ||
|
||
function alerts_parse_comment(array $item) | ||
{ | ||
global $lang, $db, $main, $plugins; | ||
switch($item['event']) | ||
{ | ||
case "new_comment": | ||
$post = $db->get("*","posts","pid='{$item['resourceID']}'",1); | ||
if(!$post) return false; | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
if($item['areaID']==$main->user['uid']) return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/profiles/?uid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->sub('alerts_comment_new_yours', $puser) | ||
); | ||
return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/profiles/?uid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->sub('alerts_comment_new', $puser) | ||
); | ||
break; | ||
|
||
case "deleted_comment": | ||
if(($res = $plugins->hook('alerts_parse_comment_deleted', $item))!==null) return $res; | ||
return false; | ||
break; | ||
|
||
case "reply_comment": | ||
global $db; | ||
$post = $db->get("*","posts","pid='{$item['resourceID']}'",1); | ||
if(!$post) return false; | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
$user2 = getUser($post['postedby'], true); | ||
$puser2 = "<![CDATA[".markup($user2['displayname'], $user2['style_start'], $user2['style_end'], $user2['is_multi_colour'])."]]>"; | ||
if($item['areaID']==$main->user['uid']) return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/profiles/?uid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_comment_reply_yours', array($puser, $puser2)) | ||
); | ||
|
||
$user3 = getUser($post['areaID'], true); | ||
$puser3 = "<![CDATA[".markup($user3['displayname'], $user3['style_start'], $user3['style_end'], $user3['is_multi_colour'])."]]>"; | ||
return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/profiles/?uid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_comment_reply', array($puser, $puser2, $puser3)) | ||
); | ||
|
||
break; | ||
|
||
case "upvote": | ||
global $db; | ||
$post = $db->get("*","posts","pid='{$item['resourceID']}'",1); | ||
if(!$post) return false; | ||
$user = getUser($item['actor'], true); | ||
$puser = "<![CDATA[".markup($user['displayname'], $user['style_start'], $user['style_end'], $user['is_multi_colour'])."]]>"; | ||
$user2 = getUser($post['postedby'], true); | ||
$puser2 = "<![CDATA[".markup($user2['displayname'], $user2['style_start'], $user2['style_end'], $user2['is_multi_colour'])."]]>"; | ||
if($item['areaID']==$main->user['uid']) return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/profiles/?uid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_comment_upvote_yours', array($puser, $puser2)) | ||
); | ||
|
||
$user3 = getUser($post['areaID'], true); | ||
$puser3 = "<![CDATA[".markup($user3['displayname'], $user3['style_start'], $user3['style_end'], $user3['is_multi_colour'])."]]>"; | ||
return array( | ||
"avatar" => getAvatar($user), | ||
"target" => "//{$main->settings['site_url']}/profiles/?uid={$item['areaID']}&pid={$item['resourceID']}", | ||
"langstring" => $lang->multi_sub('alerts_comment_upvote', array($puser, $puser2, $puser3)) | ||
); | ||
break; | ||
|
||
default: | ||
if(($res = $plugins->hook('alerts_parse_comment_default', $item))!==null) return $res; | ||
return false; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
<?php | ||
/* | ||
AtomBB UserCP Functions | ||
Created by Azareal. | ||
Licensed under the terms of the GPLv3. | ||
Copyright Azareal (c) 2012 - 2017 | ||
*/ | ||
|
||
// Is someone trying to access this directly? | ||
if(!defined("HADRON_START")) die("You are not allowed to access this file directly."); | ||
|
||
function usercp_build_nav() | ||
{ | ||
global $main, $tmpls, $lang, $plugins; | ||
$cats = array( | ||
"home" => array( | ||
"name" => $lang->get('usercp_cat_home'), | ||
"icon" => "//{$main->settings['site_url']}/images/home.png" | ||
), | ||
"critical" => array( | ||
"name" => $lang->get('usercp_cat_critical'), | ||
"icon" => "//{$main->settings['site_url']}/images/settings.png" | ||
), | ||
"avatar" => array( | ||
"name" => $lang->get('usercp_cat_avatar'), | ||
"icon" => "//{$main->settings['site_url']}/images/avatar.png" | ||
), | ||
"signature" => array( | ||
"name" => $lang->get('usercp_cat_signature'), | ||
"icon" => "//{$main->settings['site_url']}/images/signature.png" | ||
), | ||
"titles" => $lang->get('usercp_cat_titles'), | ||
"friend-invites" => $lang->get('usercp_cat_friend_invites'), | ||
"friends" => array( | ||
"name" => $lang->get('usercp_cat_friends'), | ||
"path" => "//{$main->settings['site_url']}/friends.php?action=view", | ||
"icon" => "//{$main->settings['site_url']}/images/group.png" | ||
), | ||
"profile" => $lang->get('usercp_cat_profile'), | ||
"conversations" => array( | ||
"name" => $lang->get('usercp_cat_conversations'), | ||
"path" => "//{$main->settings['site_url']}/convos.php", | ||
"icon" => "//{$main->settings['site_url']}/images/group.png" | ||
) | ||
); | ||
|
||
$clist = ""; | ||
$tmpls->stick("clist", $clist); | ||
|
||
if(!$main->settings['enable_signatures']) unset($cats['signature']); | ||
$plugins->hook("usercp_cats", $cats); | ||
|
||
foreach($cats as $key => $cat) | ||
{ | ||
if(is_array($cat)) | ||
{ | ||
if(isset($cat['path'])) $path = $cat['path']; | ||
else $path = "./usercp.php?page={$key}"; | ||
|
||
$clist .= "<tr><td class='tbody'> | ||
<img style='padding-right: 5px;' src='{$cat['icon']}' height=16 width=16 /><a href='{$path}'>{$cat['name']}</a> | ||
</td></tr>\n"; | ||
} | ||
else $clist .= "<tr><td class='tbody'><a href='./usercp.php?page={$key}'>{$cat}</a></td></tr>\n"; | ||
} | ||
} |