mirror of
https://github.com/e107inc/e107.git
synced 2025-07-29 19:00:26 +02:00
Issue #784 Forum: Thread tracking - enable/disable functioning correctly. Actual notification requires work.
This commit is contained in:
@@ -57,6 +57,10 @@ $(document).ready(function()
|
|||||||
var alertType = 'info';
|
var alertType = 'info';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(d.status == 'error')
|
||||||
|
{
|
||||||
|
alertType = 'danger';
|
||||||
|
}
|
||||||
|
|
||||||
// http://nijikokun.github.io/bootstrap-notify/
|
// http://nijikokun.github.io/bootstrap-notify/
|
||||||
|
|
||||||
@@ -84,6 +88,15 @@ $(document).ready(function()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(action == 'track')
|
||||||
|
{
|
||||||
|
if(d.html != false)
|
||||||
|
{
|
||||||
|
$('#'+ insert).html(d.html);
|
||||||
|
// alert(d.html);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(action == 'quickreply' && d.status == 'ok' )
|
if(action == 'quickreply' && d.status == 'ok' )
|
||||||
{
|
{
|
||||||
// alert(d.html);
|
// alert(d.html);
|
||||||
@@ -361,6 +374,61 @@ class e107forum
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Process Tracking Enable/disable
|
||||||
|
*/
|
||||||
|
public function ajaxTrack()
|
||||||
|
{
|
||||||
|
$ret = array();
|
||||||
|
$ret['status'] = 'error';
|
||||||
|
|
||||||
|
$threadID = intval($_POST['thread']);
|
||||||
|
|
||||||
|
if(!USER || empty($threadID))
|
||||||
|
{
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
$sql = e107::getDb();
|
||||||
|
|
||||||
|
if($sql->select('forum_track', '*', "track_userid=".USERID." AND track_thread=".$threadID))
|
||||||
|
{
|
||||||
|
if($this->track('del', USERID, $threadID))
|
||||||
|
{
|
||||||
|
$ret['html'] = IMAGE_untrack;
|
||||||
|
$ret['msg'] = "You are no longer tracking this thread."; //TODO LAN
|
||||||
|
$ret['status'] = 'ok';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$ret['msg'] = 'There was a problem disabling the tracking.'; //TODO LAN
|
||||||
|
$ret['status'] = 'error';
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if($this->track('add', USERID, $threadID))
|
||||||
|
{
|
||||||
|
$ret['msg'] = "You are now tracking this thread. "; //TODO LAN
|
||||||
|
$ret['html'] = IMAGE_track;
|
||||||
|
$ret['status'] = 'ok';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$ret['html'] = IMAGE_untrack;
|
||||||
|
$ret['msg'] = "There was a problem."; //TODO LAN
|
||||||
|
$ret['status'] = 'error';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
echo json_encode($ret);
|
||||||
|
|
||||||
|
exit;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public function ajaxModerate()
|
public function ajaxModerate()
|
||||||
@@ -1536,7 +1604,6 @@ class e107forum
|
|||||||
|
|
||||||
function track($which, $uid, $threadId, $force=false)
|
function track($which, $uid, $threadId, $force=false)
|
||||||
{
|
{
|
||||||
$e107 = e107::getInstance();
|
|
||||||
$sql = e107::getDb();
|
$sql = e107::getDb();
|
||||||
|
|
||||||
if ($this->prefs->get('track') != 1 && !$force) { return false; }
|
if ($this->prefs->get('track') != 1 && !$force) { return false; }
|
||||||
|
@@ -69,15 +69,25 @@ if(vartrue($_GET['id']) && isset($_GET['dl']))
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(e_AJAX_REQUEST && varset($_POST['action']) == 'quickreply')
|
if(e_AJAX_REQUEST)
|
||||||
{
|
{
|
||||||
$forum->ajaxQuickReply();
|
if(varset($_POST['action']) == 'quickreply')
|
||||||
|
{
|
||||||
|
$forum->ajaxQuickReply();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(varset($_POST['action']) == 'track')
|
||||||
|
{
|
||||||
|
$forum->ajaxTrack();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(MODERATOR)
|
||||||
|
{
|
||||||
|
$forum->ajaxModerate();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(e_AJAX_REQUEST && MODERATOR) // see javascript above.
|
|
||||||
{
|
|
||||||
$forum->ajaxModerate();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isset($_GET['last']))
|
if (isset($_GET['last']))
|
||||||
{
|
{
|
||||||
@@ -91,11 +101,15 @@ if(isset($_GET['f']) && $_GET['f'] == 'post')
|
|||||||
|
|
||||||
$thread->init();
|
$thread->init();
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
if(isset($_POST['track_toggle']))
|
if(isset($_POST['track_toggle']))
|
||||||
{
|
{
|
||||||
$thread->toggle_track();
|
$thread->toggle_track();
|
||||||
exit;
|
exit;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(!empty($_GET['f']))
|
if(!empty($_GET['f']))
|
||||||
{
|
{
|
||||||
@@ -251,11 +265,15 @@ $tVars->NEXTPREV .= "<a class='btn btn-default btn-sm btn-small' href='" . $e107
|
|||||||
if ($forum->prefs->get('track') && USER)
|
if ($forum->prefs->get('track') && USER)
|
||||||
{
|
{
|
||||||
$img = ($thread->threadInfo['track_userid'] ? IMAGE_track : IMAGE_untrack);
|
$img = ($thread->threadInfo['track_userid'] ? IMAGE_track : IMAGE_untrack);
|
||||||
|
|
||||||
|
/*
|
||||||
$url = $e107->url->create('forum/thread/view', array('id' => $thread->threadId), 'encode=0'); // encoding could break AJAX call
|
$url = $e107->url->create('forum/thread/view', array('id' => $thread->threadId), 'encode=0'); // encoding could break AJAX call
|
||||||
//FIXME
|
|
||||||
/*$tVars->TRACK .= "
|
$url = e107::url('forum','index');
|
||||||
|
|
||||||
|
$tVars->TRACK .= "
|
||||||
<span id='forum-track-trigger-container'>
|
<span id='forum-track-trigger-container'>
|
||||||
<a class='btn btn-default btn-sm btn-small' href='{$url}' id='forum-track-trigger'>{$img}</a>
|
<a class='btn btn-default btn-sm btn-small e-ajax' data-target='forum-track-trigger' href='{$url}' id='forum-track-trigger'>{$img}</a>
|
||||||
</span>
|
</span>
|
||||||
<script type='text/javascript'>
|
<script type='text/javascript'>
|
||||||
e107.runOnLoad(function(){
|
e107.runOnLoad(function(){
|
||||||
@@ -273,6 +291,9 @@ if ($forum->prefs->get('track') && USER)
|
|||||||
</script>
|
</script>
|
||||||
";*/
|
";*/
|
||||||
|
|
||||||
|
$tVars->TRACK = "<a id='forum-track-button' href='#' title=\"".LAN_FORUM_3040."\" data-token='".e_TOKEN."' data-forum-insert='forum-track-button' data-forum-post='".$thread->threadInfo['thread_forum_id']."' data-forum-thread='".$thread->threadInfo['thread_id']."' data-forum-action='track' name='track' class='e-tip btn btn-default' >".$img."</a>
|
||||||
|
";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -754,7 +775,7 @@ class e107ForumThread
|
|||||||
$this->noInc = false;
|
$this->noInc = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
|
||||||
function toggle_track()
|
function toggle_track()
|
||||||
{
|
{
|
||||||
@@ -778,6 +799,7 @@ class e107ForumThread
|
|||||||
exit();
|
exit();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return bool|null|string|void
|
* @return bool|null|string|void
|
||||||
|
@@ -214,7 +214,7 @@ define("LAN_FORUM_3026", "Post topic as"); // LAN_400 (p)
|
|||||||
define("LAN_FORUM_3028", "Add Poll"); // new // poll - partly in e107_plugins/poll/poll_class.php
|
define("LAN_FORUM_3028", "Add Poll"); // new // poll - partly in e107_plugins/poll/poll_class.php
|
||||||
define("LAN_FORUM_3038", "Normal"); // LAN_1
|
define("LAN_FORUM_3038", "Normal"); // LAN_1
|
||||||
define("LAN_FORUM_3039", "Deactivate emoticons for this post"); // LAN_FORUMPOST_EMOTES
|
define("LAN_FORUM_3039", "Deactivate emoticons for this post"); // LAN_FORUMPOST_EMOTES
|
||||||
define("LAN_FORUM_3040", "Enable email tracking (email sent when reply is posted)"); // LAN_380
|
define("LAN_FORUM_3040", "Enable/disable email tracking (email sent when reply is posted)"); // LAN_380
|
||||||
// missing 41-21
|
// missing 41-21
|
||||||
|
|
||||||
// forum_posted_template
|
// forum_posted_template
|
||||||
|
@@ -33,6 +33,9 @@ define('IMAGE_announce_small', $tp->toGlyph('fa-bullhorn'));
|
|||||||
define('IMAGE_closed_small', $tp->toGlyph('fa-lock'));
|
define('IMAGE_closed_small', $tp->toGlyph('fa-lock'));
|
||||||
define('IMAGE_closed', $tp->toGlyph('fa-lock', 'size=2x'));
|
define('IMAGE_closed', $tp->toGlyph('fa-lock', 'size=2x'));
|
||||||
|
|
||||||
|
define('IMAGE_track', $tp->toGlyph('fa-bell'));
|
||||||
|
define('IMAGE_untrack', $tp->toGlyph('fa-bell-o'));
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
// Thread info
|
// Thread info
|
||||||
@@ -54,6 +57,9 @@ define('IMAGE_announce_small', '<img src="'.img_path('announce_small.png').'"
|
|||||||
define('IMAGE_closed_small', '<img src="'.img_path('closed_small.png').'" alt="'.LAN_FORUM_1014.'" title="'.LAN_FORUM_1014.'" />');
|
define('IMAGE_closed_small', '<img src="'.img_path('closed_small.png').'" alt="'.LAN_FORUM_1014.'" title="'.LAN_FORUM_1014.'" />');
|
||||||
define('IMAGE_closed', '<img src="'.img_path('closed.png').'" alt="'.LAN_FORUM_1014.'" title="'.LAN_FORUM_1014.'" />');
|
define('IMAGE_closed', '<img src="'.img_path('closed.png').'" alt="'.LAN_FORUM_1014.'" title="'.LAN_FORUM_1014.'" />');
|
||||||
|
|
||||||
|
define('IMAGE_track', '<img src="'.img_path('track.png').'" alt="'.LAN_FORUM_4009.'" title="'.LAN_FORUM_4009.'" class="icon S16 action" />');
|
||||||
|
define('IMAGE_untrack', '<img src="'.img_path('untrack.png').'" alt="'.LAN_FORUM_4010.'" title="'.LAN_FORUM_4010.'" class="icon S16 action" />');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// User info
|
// User info
|
||||||
@@ -65,8 +71,7 @@ define('IMAGE_profile', '<img src="'.img_path('profile.png').'" alt="'.LAN_FORUM
|
|||||||
define('IMAGE_pm', '<img src="'.img_path('pm.png').'" alt="'.LAN_FORUM_4008.'" title="'.LAN_FORUM_4008.'" class="icon S16 action" />');
|
define('IMAGE_pm', '<img src="'.img_path('pm.png').'" alt="'.LAN_FORUM_4008.'" title="'.LAN_FORUM_4008.'" class="icon S16 action" />');
|
||||||
define('IMAGE_edit', '<img src="'.img_path('edit.png').'" alt="'.LAN_EDIT.'" title="'.LAN_EDIT.'" class="icon S16 action" />');
|
define('IMAGE_edit', '<img src="'.img_path('edit.png').'" alt="'.LAN_EDIT.'" title="'.LAN_EDIT.'" class="icon S16 action" />');
|
||||||
define('IMAGE_quote', '<img src="'.img_path('quote.png').'" alt="'.LAN_FORUM_2041.'" title="'.LAN_FORUM_2041.'" class="icon S16 action" />');
|
define('IMAGE_quote', '<img src="'.img_path('quote.png').'" alt="'.LAN_FORUM_2041.'" title="'.LAN_FORUM_2041.'" class="icon S16 action" />');
|
||||||
define('IMAGE_track', '<img src="'.img_path('track.png').'" alt="'.LAN_FORUM_4009.'" title="'.LAN_FORUM_4009.'" class="icon S16 action" />');
|
|
||||||
define('IMAGE_untrack', '<img src="'.img_path('untrack.png').'" alt="'.LAN_FORUM_4010.'" title="'.LAN_FORUM_4010.'" class="icon S16 action" />');
|
|
||||||
define('IMAGE_admin_edit', '<img src="'.img_path('admin_edit.png').'" alt="'.LAN_EDIT.'" title="'.LAN_EDIT.'" class="icon S16 action" />');
|
define('IMAGE_admin_edit', '<img src="'.img_path('admin_edit.png').'" alt="'.LAN_EDIT.'" title="'.LAN_EDIT.'" class="icon S16 action" />');
|
||||||
define('IMAGE_admin_move', '<img src="'.img_path('admin_move.png').'" alt="'.LAN_FORUM_2042.'" title="'.LAN_FORUM_2042.'" class="icon S16 action" />');
|
define('IMAGE_admin_move', '<img src="'.img_path('admin_move.png').'" alt="'.LAN_FORUM_2042.'" title="'.LAN_FORUM_2042.'" class="icon S16 action" />');
|
||||||
define('IMAGE_admin_split', '<img src="'.img_path('admin_split.png').'" alt="'.LAN_FORUM_2043.'" title="'.LAN_FORUM_2043.'" class="icon S16 action" />');
|
define('IMAGE_admin_split', '<img src="'.img_path('admin_split.png').'" alt="'.LAN_FORUM_2043.'" title="'.LAN_FORUM_2043.'" class="icon S16 action" />');
|
||||||
|
@@ -317,7 +317,7 @@ $FORUM_VIEWTOPIC_TEMPLATE['start'] = "
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class='row row-fluid'>
|
<div class='row row-fluid'>
|
||||||
<div class='col-md-9 span9 pull-left'><h3>{THREADNAME}</h3></div><div class='col-md-3 span3 pull-right right text-right' style='padding-top:10px'>{BUTTONSX}</div>
|
<div class='col-md-9 span9 pull-left'><h3>{THREADNAME}</h3></div><div class='col-md-3 span3 pull-right right text-right' style='padding-top:10px'>{TRACK} {BUTTONSX}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{MESSAGE}
|
{MESSAGE}
|
||||||
|
Reference in New Issue
Block a user