Compare commits

...

10 commits

Author SHA1 Message Date
Robert Gaggl
84c33059db fixed bug 409 (http://helma.org/bugs/show_bug.cgi?id=409) 2005-02-13 14:10:33 +00:00
Robert Gaggl
85e55e333d updated to current version 2005-01-24 21:19:23 +00:00
Robert Gaggl
34449d8fb4 updated to latest version (bugfix in activateURLs) 2005-01-23 19:57:07 +00:00
Robert Gaggl
1959685ca8 updated to latest version (bugfix in activateURLs) 2005-01-23 19:42:00 +00:00
Robert Gaggl
931ee20cb5 updated to latest version 2005-01-23 18:46:28 +00:00
Robert Gaggl
b468bbf0bc delete param.limit before rendering the image list (fixes bug 393, http://helma.org/bugs/show_bug.cgi?id=393) 2005-01-23 18:27:05 +00:00
Robert Gaggl
6976464a70 updated to 1.0.3 2005-01-23 17:30:48 +00:00
Robert Gaggl
c89a83d8fc updated to helma 1.4.1 2005-01-23 17:21:46 +00:00
Robert Gaggl
f1eaed6966 synch'ed with recent changes in main branch (since 4.Aug.2004) 2005-01-23 17:07:50 +00:00
(no author)
c4518fe326 This commit was manufactured by cvs2svn to create branch 'antville_1_1'. 2004-11-07 21:18:15 +00:00
26 changed files with 137 additions and 116 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -236,31 +236,43 @@ function imagelist_macro(param) {
return; return;
if (!site.images.size()) if (!site.images.size())
return; return;
var size = Math.min(param.limit ? param.limit : 5, site.images.size()); var max = Math.min(param.limit ? param.limit : 5, site.images.size());
var imgcnt = 0;
var idx = 0; var idx = 0;
while (imgcnt < size || imgcnt == size-1) { var imgParam;
var linkParam = {};
delete param.limit;
while (idx < max) {
var imgObj = site.images.get(idx++); var imgObj = site.images.get(idx++);
var url = param.linkto ? param.linkto : imgObj.getUrl();
imgParam = Object.clone(param);
delete imgParam.itemprefix;
delete imgParam.itemsuffix;
delete imgParam.as;
delete linkParam.href;
delete linkParam.onclick;
res.write(param.itemprefix); res.write(param.itemprefix);
// return different display according to param.as // return different display according to param.as
if (param.as == "thumbnail") { switch (param.as) {
if (imgObj.thumbnail) case "url":
imgObj = imgObj.thumbnail; res.write(imgObj.getUrl());
} else if (param.as == "popup") { break;
url = imgObj.getPopupUrl(); case "popup":
if (imgObj.thumbnail) linkParam.onclick = imgObj.getPopupUrl();
imgObj = imgObj.thumbnail; case "thumbnail":
linkParam.href = param.linkto ? param.linkto : imgObj.getUrl();
if (imgObj.thumbnail)
imgObj = imgObj.thumbnail;
default:
if (linkParam.href) {
Html.openLink(linkParam);
renderImage(imgObj, imgParam);
Html.closeLink();
} else
renderImage(imgObj, imgParam);
} }
if (url) {
Html.openLink({href: url});
renderImage(imgObj, Object.clone(param));
Html.closeLink();
} else
renderImage(imgObj, Object.clone(param));
res.write(param.itemsuffix); res.write(param.itemsuffix);
imgcnt++;
} }
return; return;
} }

View file

@ -104,7 +104,8 @@ function show_macro(param) {
img = this.thumbnail; img = this.thumbnail;
} else } else
var url = img.getUrl(); var url = img.getUrl();
delete(param.what); delete param.what;
delete param.as;
param.src = img.getUrl(); param.src = img.getUrl();
Html.openLink({href: url}); Html.openLink({href: url});
renderImage(img, param); renderImage(img, param);

View file

@ -221,7 +221,8 @@ function evalDownload(fullExport) {
var imgLog = this.images.dumpToZip(z, fullExport); var imgLog = this.images.dumpToZip(z, fullExport);
// add skins to the zip archive // add skins to the zip archive
var skinLog = this.skins.dumpToZip(z, fullExport); var skinLog = this.skins.dumpToZip(z, fullExport);
return z.close(); z.close();
return z.getData();
} }
/** /**

View file

@ -1,3 +1,4 @@
/** /**
* SORUA AuthURI * SORUA AuthURI
*/ */
@ -7,9 +8,10 @@ function modSorua_action() {
var failUrl = req.data["sorua-fail-url"]; var failUrl = req.data["sorua-fail-url"];
var userID = req.data["sorua-user"]; var userID = req.data["sorua-user"];
var action = req.data["sorua-action"]; var action = req.data["sorua-action"];
if (action == "authenticate") { // authenticate-action if (action == "authenticate") { // authenticate-action
if (session.user && session.user.name == userID) { if (session.user && (userID == null || userID == "" || session.user.name == userID)) {
app.data.modSorua[returnUrl] = new Date(); // store returnUrl // store returnUrl + timestamp + userID
app.data.modSorua[returnUrl] = {time: new Date(), userID: session.user.name};
res.redirect(returnUrl); res.redirect(returnUrl);
} else if (failUrl) { } else if (failUrl) {
res.redirect(failUrl); res.redirect(failUrl);
@ -24,14 +26,15 @@ function modSorua_action() {
var now = new Date(); var now = new Date();
var arr = new Array(); var arr = new Array();
for (var i in app.data.modSorua) { for (var i in app.data.modSorua) {
if (now.valueOf() - app.data.modSorua[i].valueOf() < 1000 * 60) if (app.data.modSorua[i] && app.data.modSorua[i].time &&
now.valueOf() - app.data.modSorua[i].time.valueOf() < 1000 * 60)
arr[i] = app.data.modSorua[i]; arr[i] = app.data.modSorua[i];
} }
app.data.modSorua = arr; app.data.modSorua = arr;
// now check whether returnUrl has been used recently // now check whether returnUrl has been used recently
if (app.data.modSorua[returnUrl]) { if (app.data.modSorua[returnUrl]) {
res.status = 200; res.status = 200;
res.write("OK"); res.write("user:" + app.data.modSorua[returnUrl].userID);
return; return;
} else { } else {
res.status = 403; res.status = 403;
@ -49,22 +52,18 @@ function modSorua_action() {
* SORUA Login Form * SORUA Login Form
*/ */
function modSoruaLoginForm_action() { function modSoruaLoginForm_action() {
if (!session.data.modSorua) res.redirect(root.href()); // should not happen anyways if (!session.data.modSorua || !session.data.modSorua.returnUrl)
res.redirect(root.href()); // should not happen anyways
if (req.data.login) { if (req.data.login) {
try { try {
res.message = this.evalLogin(session.data.modSorua.userID, req.data.password); res.message = this.evalLogin(req.data.name, req.data.password);
var returnUrl = session.data.modSorua.returnUrl; var returnUrl = session.data.modSorua.returnUrl;
if (returnUrl) { app.data.modSorua[returnUrl] = {time: new Date(), userID: req.data.name};
app.data.modSorua[returnUrl] = new Date(); // store returnUrl res.redirect(returnUrl);
res.redirect(returnUrl);
} else { // should not happen anyways
res.redirect(root.href());
}
} catch (err) { } catch (err) {
res.message = err.toString(); res.message = err.toString();
} }
} }
res.data.user = session.data.modSorua.userID;
res.data.action = this.href("modSoruaLoginForm"); res.data.action = this.href("modSoruaLoginForm");
this.renderSkin("modSorua"); this.renderSkin("modSorua");
} }

View file

@ -11,13 +11,13 @@
</head> </head>
<body> <body>
<h1>SORUA at antville.org</h1> <h1>SORUA at <% root.sys_title %></h1>
<% response.message prefix='<span class="message">' suffix='</span><br /><br />' %> <% response.message prefix='<span class="message">' suffix='</span><br /><br />' %>
<form method="post" action="<% response.action %>"> <form method="post" action="<% response.action %>">
<table border="0" cellspacing="0" cellpadding="3"> <table border="0" cellspacing="0" cellpadding="3">
<tr> <tr>
<td class="small" nowrap="nowrap">Username:</td> <td class="small" nowrap="nowrap">Username:</td>
<td nowrap="nowrap"><% response.user %></td> <td nowrap="nowrap"><% input type="text" name="name" size="15" tabindex="1" %></td>
</tr> </tr>
<tr> <tr>
<td class="small" nowrap="nowrap">Password:</td> <td class="small" nowrap="nowrap">Password:</td>

View file

@ -10,10 +10,18 @@ function checkAccess(action, usr, level) {
try { try {
switch (action) { switch (action) {
case "main" : case "main" :
case "admins" :
case "managers" :
case "contributors" :
case "subscribers" :
case "create" :
checkIfLoggedIn(this.href(action)); checkIfLoggedIn(this.href(action));
this.checkEditMembers(usr, level); this.checkEditMembers(usr, level);
break; break;
case "updated" :
case "memberships" :
case "subscriptions" : case "subscriptions" :
case "edit" :
checkIfLoggedIn(this.href(action)); checkIfLoggedIn(this.href(action));
break; break;
} }

View file

@ -63,7 +63,8 @@ function reset() {
* (re-)creates the cache if necessary * (re-)creates the cache if necessary
*/ */
function evalCache() { function evalCache() {
if (this.cache.content == null) { if (this.cache.content == null ||
this.cache.content.__lastModified__.getTime() < this._parent.__lastModified__.getTime()) {
var fieldName = this.getDataField(); var fieldName = this.getDataField();
// cache is either outdated or not existing, so (re-)create it // cache is either outdated or not existing, so (re-)create it
if (this._parent[fieldName] && this._parent[fieldName].trim() != "") { if (this._parent[fieldName] && this._parent[fieldName].trim() != "") {

View file

@ -56,7 +56,7 @@ function list_action() {
// preparing res.data.sitelist and prev/next links // preparing res.data.sitelist and prev/next links
// ("all" shows all sites, "yes" is for scrolling) // ("all" shows all sites, "yes" is for scrolling)
this.renderSitelist(25, "all", "yes"); this.renderSitelist(25, "all", "yes");
res.data.title = getMessage("SysMgr.listTitle ", {serverTitle: root.getTitle()}); res.data.title = getMessage("SysMgr.listTitle", {serverTitle: root.getTitle()});
res.data.body = this.renderSkinAsString("list"); res.data.body = this.renderSkinAsString("list");
root.renderSkin("page"); root.renderSkin("page");
return; return;

View file

@ -22,7 +22,7 @@ function evalNewSite(title, alias, creator) {
// of the currently active root layout // of the currently active root layout
var initLayout = new Layout(newSite, newSite.title, creator); var initLayout = new Layout(newSite, newSite.title, creator);
initLayout.alias = newSite.alias; initLayout.alias = newSite.alias;
initLayout.setParentLayout(res.handlers.layout); initLayout.setParentLayout(root.getLayout());
if (!this.add(newSite)) if (!this.add(newSite))
throw new Exception("siteCreate"); throw new Exception("siteCreate");
newSite.layouts.add(initLayout); newSite.layouts.add(initLayout);

View file

@ -7,9 +7,9 @@
<title><% response.title %></title> <title><% response.title %></title>
<meta http-equiv="Content-Type" content="text/html" /> <meta http-equiv="Content-Type" content="text/html" />
<meta name="MSSmartTagsPreventParsing" content="TRUE" /> <meta name="MSSmartTagsPreventParsing" content="TRUE" />
<link rel="alternate" type="text/xml" title="XML" href="rss" />
<script type="text/javascript" src="<% root.url %>main.js"></script> <script type="text/javascript" src="<% root.url %>main.js"></script>
<link rel="stylesheet" type="text/css" title="CSS Stylesheet" href="<% root.url %>main.css" /> <link rel="stylesheet" type="text/css" title="CSS Stylesheet" href="<% root.url %>main.css" />
<link rel="alternate" type="text/rss+xml" title="RSS Feed" href="<% root.url %>rss" />
</head> </head>
<body> <body>

View file

@ -1,31 +1,28 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> <?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>
<rdf:RDF <rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns="http://purl.org/rss/1.0/" xmlns="http://purl.org/rss/1.0/"
> >
<channel rdf:about="<% root.url encoding="xml" %>">
<channel rdf:about="<% root.url encoding="xml" %>"> <title><% param.title encoding="xml" %> Sites</title>
<title><% param.title encoding="xml" %> Sites</title> <link><% root.url encoding="xml" %></link>
<link><% root.url encoding="xml" %></link> <description>Recently updated <% param.title %> sites ordered by date</description>
<description>Recently updated <% param.title %> sites ordered by date</description> <dc:publisher><% param.title encoding="xml" %></dc:publisher>
<dc:publisher><% param.title encoding="xml" %></dc:publisher> <dc:creator><% param.title encoding="xml" %><% param.email encoding="xml" prefix=" (mailto:" suffix=")" %></dc:creator>
<dc:creator><% param.title encoding="xml" %><% param.email encoding="xml" prefix=" (mailto:" suffix=")" %></dc:creator> <dc:date><% param.lastupdate %></dc:date>
<dc:date><% param.lastupdate %></dc:date> <dc:language>en</dc:language>
<dc:language>en</dc:language> <sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency>
<sy:updateFrequency>1</sy:updateFrequency> <sy:updateBase>2000-01-01T00:00:00Z</sy:updateBase>
<sy:updateBase>2000-01-01T00:00:00Z</sy:updateBase> <items>
<items> <rdf:Seq>
<rdf:Seq>
<% param.resources %> <% param.resources %>
</rdf:Seq> </rdf:Seq>
</items> </items>
</channel> </channel>
<% param.textinput %> <% param.textinput %>
<% param.items %> <% param.items %>
</rdf:RDF> </rdf:RDF>

View file

@ -609,7 +609,7 @@ function spamfilter_macro(param) {
* macro returns the used disk space for this site * macro returns the used disk space for this site
*/ */
function diskusage_macro(param) { function diskusage_macro(param) {
res.write((this.getDiskUsage() / 1024).format("###,###") + " KB"); res.write(this.getDiskUsage().format("###,###") + " KB");
return; return;
} }

View file

@ -7,9 +7,9 @@
<title><% response.title %></title> <title><% response.title %></title>
<meta http-equiv="Content-Type" content="text/html" /> <meta http-equiv="Content-Type" content="text/html" />
<meta name="MSSmartTagsPreventParsing" content="TRUE" /> <meta name="MSSmartTagsPreventParsing" content="TRUE" />
<link rel="alternate" type="text/xml" title="XML" href="<% site.url %>rss" />
<script type="text/javascript" src="<% site.url %>main.js"></script> <script type="text/javascript" src="<% site.url %>main.js"></script>
<link rel="stylesheet" type="text/css" title="CSS Stylesheet" href="<% site.url %>main.css" /> <link rel="stylesheet" type="text/css" title="CSS Stylesheet" href="<% site.url %>main.css" />
<link rel="alternate" type="text/rss+xml" title="RSS Feed" href="<% site.url %>rss" />
</head> </head>
<body> <body>

View file

@ -1,37 +1,34 @@
<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?> <?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>
<rdf:RDF <rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns="http://purl.org/rss/1.0/" xmlns="http://purl.org/rss/1.0/"
> >
<channel rdf:about="<% site.url encoding="xml" %>">
<channel rdf:about="<% site.url %>"> <title><% site.title encoding="xml" %><% param.subtitle prefix=" (" suffix=")" encoding="xml" %></title>
<title><% site.title encoding="xml" %><% param.subtitle prefix=" (" suffix=")" %></title> <link><% site.url encoding="xml" %></link>
<link><% site.url %></link> <description><% site.tagline encoding="xml" %></description>
<description><% site.tagline encoding="xml" %></description> <dc:publisher><% param.title encoding="xml" %></dc:publisher>
<dc:publisher><% param.title encoding="xml" %></dc:publisher> <dc:creator><% param.creator encoding="xml" %><% param.email encoding="xml" prefix=" (mailto:" suffix=")" %></dc:creator>
<dc:creator><% param.creator encoding="xml" %><% param.email encoding="xml" prefix=" (mailto:" suffix=")" %></dc:creator> <dc:date><% param.lastupdate encoding="xml" %></dc:date>
<dc:date><% param.lastupdate %></dc:date> <dc:language>en</dc:language>
<dc:language>en</dc:language> <sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency>
<sy:updateFrequency>1</sy:updateFrequency> <sy:updateBase>2000-01-01T00:00:00Z</sy:updateBase>
<sy:updateBase>2000-01-01T00:00:00Z</sy:updateBase> <items>
<items> <rdf:Seq>
<rdf:Seq>
<% param.resources %> <% param.resources %>
<textinput rdf:resource="<% site.url %>search" /> </rdf:Seq>
</rdf:Seq> </items>
</items> <textinput rdf:resource="<% site.url encoding="xml" %>search" />
</channel> </channel>
<% param.items %> <% param.items %>
<textinput rdf:about="<% site.url encoding="xml" %>search">
<textinput rdf:about="<% site.url %>search">
<title>find</title> <title>find</title>
<description>Search this site:</description> <description>Search this site:</description>
<name>q</name> <name>q</name>
<link><% site.url action="search" %></link> <link><% site.url action="search" encoding="xml" %></link>
</textinput> </textinput>
</rdf:RDF> </rdf:RDF>

View file

@ -1,9 +1,9 @@
<item rdf:about="<% site.url encoding="xml" %>"> <item rdf:about="<% site.url encoding="xml" %>">
<title><% param.title encoding="xml" %></title> <title><% param.title encoding="xml" %></title>
<link><% site.url encoding="xml" %></link> <link><% site.url encoding="xml" %></link>
<description><% param.date %><% site.tagline encoding="xml" %></description> <description><% param.date %><% site.tagline encoding="xml" %></description>
<dc:publisher><% param.publisher encoding="xml" %></dc:publisher> <dc:publisher><% param.publisher encoding="xml" %></dc:publisher>
<dc:creator><% param.creator encoding="xml" %><% param.email prefix=" (mailto:" suffix=")" encoding="xml" %></dc:creator> <dc:creator><% param.creator encoding="xml" %><% param.email prefix=" (mailto:" suffix=")" encoding="xml" %></dc:creator>
<dc:rights><% param.year prefix="Copyright &#169; " encoding="xml" %> <% param.creator encoding="xml" %></dc:rights> <dc:rights><% param.year prefix="Copyright &#169; " encoding="xml" %> <% param.creator encoding="xml" %></dc:rights>
<dc:date><% param.isodate %></dc:date> <dc:date><% param.isodate encoding="xml" %></dc:date>
</item> </item>

View file

@ -1 +1 @@
<rdf:li rdf:resource="<% site.url encoding="xml" %>" /> <rdf:li rdf:resource="<% site.url encoding="xml" %>" />

View file

@ -9,7 +9,7 @@ function renderTree(param, collection) {
var collection = SKINSETS; var collection = SKINSETS;
for (var i in collection) { for (var i in collection) {
var skinset = collection[i]; var skinset = collection[i];
if (skinset.context && skinset.context.toLowerCase() != res.handlers.context._prototype) if (skinset.context && skinset.context.toLowerCase() != res.handlers.context._prototype.toLowerCase())
continue; continue;
var sp = {skinset: skinset.key, anchor: skinset.key, "class": "closed"}; var sp = {skinset: skinset.key, anchor: skinset.key, "class": "closed"};
var desc = this.getSkinDescription("skinset", skinset.key); var desc = this.getSkinDescription("skinset", skinset.key);

View file

@ -262,6 +262,8 @@ function comments_macro(param) {
* if true, render form to add a comment * if true, render form to add a comment
*/ */
function commentform_macro(param) { function commentform_macro(param) {
if (!this.discussions)
return;
if (session.user) { if (session.user) {
res.data.action = this.href("comment"); res.data.action = this.href("comment");
(new Comment()).renderSkin("edit"); (new Comment()).renderSkin("edit");

View file

@ -1,10 +1,10 @@
<item rdf:about="<% param.url encoding="xml" %>"> <item rdf:about="<% param.url encoding="xml" %>">
<title><% param.title encoding="xml" %></title> <title><% param.title encoding="xml" %></title>
<link><% param.url encoding="xml" %></link> <link><% param.url encoding="xml" %></link>
<% param.text prefix="<description>" suffix="</description>" encoding="xml" %> <% param.text prefix="<description>" suffix="</description>" encoding="xml" %>
<dc:publisher><% param.publisher encoding="xml" %></dc:publisher> <dc:publisher><% param.publisher encoding="xml" %></dc:publisher>
<dc:creator><% param.creator encoding="xml" %><% param.email prefix=" (mailto:" suffix=")" encoding="xml" %></dc:creator> <dc:creator><% param.creator encoding="xml" %><% param.email prefix=" (mailto:" suffix=")" encoding="xml" %></dc:creator>
<% param.subject prefix="<dc:subject>" suffix="</dc:subject>" encoding="xml" %> <% param.subject prefix="<dc:subject>" suffix="</dc:subject>" encoding="xml" %>
<dc:rights><% param.year prefix="Copyright &#169; " encoding="xml" %> <% param.creator %></dc:rights> <dc:rights><% param.year prefix="Copyright &#169; " encoding="xml" %> <% param.creator encoding="xml" %></dc:rights>
<dc:date><% param.date %></dc:date> <dc:date><% param.date encoding="xml" %></dc:date>
</item> </item>

View file

@ -1 +1 @@
<rdf:li rdf:resource="<% story.url encoding="xml" %>" /> <rdf:li rdf:resource="<% story.url encoding="xml" %>" />

View file

@ -272,8 +272,8 @@ create table AV_TEXT (
TEXT_TEXT mediumtext, TEXT_TEXT mediumtext,
TEXT_CONTENT mediumtext, TEXT_CONTENT mediumtext,
TEXT_RAWCONTENT mediumtext, TEXT_RAWCONTENT mediumtext,
TEXT_ISONLINE tinyint(1), TEXT_ISONLINE tinyint(4),
TEXT_EDITABLEBY tinyint(1), TEXT_EDITABLEBY tinyint(4),
TEXT_HASDISCUSSIONS tinyint(1), TEXT_HASDISCUSSIONS tinyint(1),
TEXT_CREATETIME datetime, TEXT_CREATETIME datetime,
TEXT_F_USER_CREATOR mediumint(10), TEXT_F_USER_CREATOR mediumint(10),

View file

@ -0,0 +1,3 @@
use antville;
alter table AV_TEXT modify TEXT_ISONLINE tinyint(4);
alter table AV_TEXT modify TEXT_EDITABLEBY tinyint(4);