// trickery. This still could cause confusion if the "like" ajax call
// is delayed and NavUpdate runs before it completes.
-function dolike(ident,verb) {
+/**
+ * @param {int} ident The id of the relevant item
+ * @param {string} verb The verb of the action
+ * @param {boolean} un Whether to perform an activity removal instead of creation
+ */
+function dolike(ident, verb, un) {
unpause();
$('#like-rotator-' + ident.toString()).show();
+ verb = un ? 'un' + verb : verb;
$.get('like/' + ident.toString() + '?verb=' + verb, NavUpdate);
liking = 1;
force_update = true;
var lockvisible = false;
-function lockview(event,id) {
+function lockview(event, type, id) {
event = event || window.event;
cursor = getPosition(event);
if (lockvisible) {
- lockviewhide();
+ lockvisible = false;
+ $('#panel').hide();
} else {
lockvisible = true;
- $.get('lockview/' + id, function(data) {
- $('#panel').html(data);
- $('#panel').css({'left': cursor.x + 5 , 'top': cursor.y + 5});
- $('#panel').show();
+ $.get('permission/tooltip/' + type + '/' + id, function(data) {
+ $('#panel')
+ .html(data)
+ .css({'left': cursor.x + 5 , 'top': cursor.y + 5})
+ .show();
});
}
}
-function lockviewhide() {
- lockvisible = false;
- $('#panel').hide();
-}
-
function post_comment(id) {
unpause();
commentBusy = true;
$("#scroll-loader").fadeIn('normal');
- // the page number to load is one higher than the actual
- // page number
- infinite_scroll.pageno+=1;
-
match = $("span.received").last();
if (match.length > 0) {
received = match[0].innerHTML;
commented = "0000-00-00 00:00:00";
}
- match = $("span.id").last();
+ match = $("span.uriid").last();
if (match.length > 0) {
- id = match[0].innerHTML;
+ uriid = match[0].innerHTML;
} else {
- id = "0";
+ uriid = "0";
}
// get the raw content from the next page and insert this content
// right before "#conversation-end"
- $.get(infinite_scroll.reload_uri + '&mode=raw&last_received=' + received + '&last_commented=' + commented + '&last_created=' + created + '&last_id=' + id + '&page=' + infinite_scroll.pageno, function(data) {
+ $.get(infinite_scroll.reload_uri + '&mode=raw&last_received=' + received + '&last_commented=' + commented + '&last_created=' + created + '&last_uriid=' + uriid, function(data) {
$("#scroll-loader").hide();
if ($(data).length > 0) {
$(data).insertBefore('#conversation-end');
});
}
-function profChangeMember(gid,cid) {
- $('body .fakelink').css('cursor', 'wait');
- $.get('profperm/' + gid + '/' + cid, function(data) {
- $('#prof-update-wrapper').html(data);
- $('body .fakelink').css('cursor', 'auto');
- });
-}
-
function contactgroupChangeMember(checkbox, gid, cid) {
let url;
// checkbox.checked is the checkbox state after the click