antville/code/Site/sysmgr_macros.js

122 lines
3.3 KiB
JavaScript
Raw Normal View History

2002-03-27 11:27:04 +00:00
/**
* macro counts
*/
function sysmgr_count_macro(param) {
if (!param || !param.what)
return;
// this macro is allowed just for sysadmins
if (!isUserSysAdmin())
2002-03-27 11:27:04 +00:00
return;
if (param.what == "stories")
res.write(this.allstories.size());
else if (param.what == "comments")
res.write(this.allcontent.size() - this.allstories.size());
else if (param.what == "images")
res.write(this.images.size());
else if (param.what == "goodies")
res.write(this.goodies.size());
}
/**
* function renders the statusflags for this weblog
*/
function sysmgr_statusflags_macro(param) {
// this macro is allowed just for sysadmins
if (!isUserSysAdmin())
2002-03-27 11:27:04 +00:00
return;
if (this.isTrusted())
res.write("<span class=\"flagltgreen\" nowrap>TRUSTED</span>");
if (!parseInt(this.online))
res.write("<span class=\"flagred\" nowrap>PRIVATE</span>");
else
res.write("<span class=\"flagdkgreen\" nowrap>PUBLIC</span>");
if (this.isBlocked())
res.write("<span class=\"flagblack\" nowrap>BLOCKED</span>");
}
/**
* function renders an edit-link
*/
function sysmgr_editlink_macro(param) {
// this macro is allowed just for sysadmins
if (!isUserSysAdmin() || req.data.item == this.alias)
2002-03-27 11:27:04 +00:00
return;
var linkParam = new Object();
linkParam.linkto = "weblogs";
linkParam.urlparam = "?item=" + this.alias;
linkParam.urlparam += "&action=edit";
if (req.data.page)
linkParam.urlparam += "&page=" + req.data.page;
linkParam.urlparam += "#" + this.alias;
root.manage.openLink(linkParam);
res.write(param.text ? param.text : "edit");
this.closeLink();
}
/**
* function renders a delete-link
*/
function sysmgr_deletelink_macro(param) {
// this macro is allowed just for sysadmins
if (!isUserSysAdmin() || req.data.item == this.alias)
2002-03-27 11:27:04 +00:00
return;
var linkParam = new Object();
linkParam.linkto = "weblogs";
linkParam.urlparam = "?item=" + this.alias;
linkParam.urlparam += "&action=remove";
if (req.data.page)
linkParam.urlparam += "&page=" + req.data.page;
linkParam.urlparam += "#" + this.alias;
root.manage.openLink(linkParam);
res.write(param.text ? param.text : "delete");
this.closeLink();
}
/**
* macro renders the name of the creator of this
* weblog as link
*/
function sysmgr_creator_macro(param) {
// this macro is allowed just for sysadmins
if (!isUserSysAdmin())
2002-03-27 11:27:04 +00:00
return;
res.write(this.creator.name);
}
/**
* macro renders the trust-state of this weblog
*/
function sysmgr_trusted_macro(param) {
// this macro is allowed just for sysadmins
if (!isUserSysAdmin())
2002-03-27 11:27:04 +00:00
return;
if (param.as == "editor") {
var options = new Array("no","yes");
var selectedIndex = parseInt(this.trusted,10);
renderDropDownBox("trusted",options,selectedIndex);
2002-03-27 11:27:04 +00:00
} else
res.write(this.isTrusted() ? "yes" : "no");
}
/**
* macro renders the block-state of this weblog
*/
function sysmgr_blocked_macro(param) {
// this macro is allowed just for sysadmins
if (!isUserSysAdmin())
2002-03-27 11:27:04 +00:00
return;
if (param.as == "editor") {
var options = new Array("no","yes");
var selectedIndex = parseInt(this.blocked,10);
res.write(renderDropDownBox("blocked",options,selectedIndex));
2002-03-27 11:27:04 +00:00
} else
res.write(this.isBlocked() ? "yes" : "no");
}