r9439 - apps/gobi/trunk/code/Page

[email protected]
Newsgroups gmane.comp.java.helma.cvs
Message-ID <[email protected]>
Author: hannes
Date: 2008-12-17 16:01:33 +0100 (Wed, 17 Dec 2008)
New Revision: 9439

Modified:
   apps/gobi/trunk/code/Page/Page.js
Log:
Remove duplicate actions, they're supposed to be in PageActions.js

Details at http://dev.helma.org/trac/helma/changeset/9439

Modified: apps/gobi/trunk/code/Page/Page.js
===================================================================
--- apps/gobi/trunk/code/Page/Page.js	2008-12-16 14:01:37 UTC (rev 9438)
+++ apps/gobi/trunk/code/Page/Page.js	2008-12-17 15:01:33 UTC (rev 9439)
@@ -118,681 +118,4 @@
     return 0;
 }
 
-//////////////////////////// actions////////////////////////////////
 
-function history_action() {
-    var list = this.version_history.list().reverse();
-    if (list.length == 0) {
-        res.data.body = msg("history_no_versions");
-    } else {
-        res.push();
-        Html.div({ style: "float: right;" }, 
-            Html.A({ href: this.href("history.rss"), title: "RSS 2.0 feed for updates to this page" },
-                Html.Img({ src: getStaticUrl() + "xmlbutton.gif", border: 0, width: 36, height: 14 })));
-        for (var i in list) {
-            var idx = list.length - i;
-            var v1 = idx == 1 ? {body: ""} : list[parseInt(i)+1];
-            var v2 = list[i];
-            var author = v2.creator ? v2.creator : null;
-            var versionUrl = this.href("history.diff")+"?v="+idx;
-            res.write(msg("history_version_header", versionUrl, idx, 
-                          author ? author.name : msg("history_anonymous"), 
-                          v2.modifytime.format("dd. MMMM yyyy, HH:mm")));
-            var form1 = this.getRenderedFormProperties(v1.formdata ? v1.getFormData() : {});
-            var form2 = this.getRenderedFormProperties(v2.getFormData());
-            diff2(v1.body, v2.body, form1, form2);
-        }
-        res.data.body = res.pop();
-    }
-    this.renderSkin("page");
-}
-
-function history_rss_action() {
-    var list = this.version_history.list().reverse();
-    var path = this.getPath();
-    RssWriter.openChannel({link: this.href(), title: path, 
-                           description: "Updates for Page " + path, 
-                           pubDate: new Date()});
-    for (var i = 0; i < list.length; i++) {
-        if (i > 20)
-            break;
-        var idx = list.length - i;
-        var v1 = idx == 1 ? {body: ""} : list[parseInt(i)+1];
-        var v2 = list[i];
-        var author = v2.creator ? v2.creator.name : "anonymous user";
-        var link = this.href("history.diff") + "?v=" + idx;
-        var title = "Version " + idx;
-        var date = v2.modifytime;
-        var form1 = this.getRenderedFormProperties(v1.formdata ? v1.getFormData() : {});
-        var form2 = this.getRenderedFormProperties(v2.getFormData());
-        res.push();
-        diff2(v1.body, v2.body, form1, form2);
-        var desc = res.pop();
-        RssWriter.writeItem({title: title, link: link,
-                             description: desc, pubDate: date, 
-                             author: author });
-    }
-    RssWriter.closeChannel();
-}
-
-function history_diff_action() {
-    var versions = this.version_history;
-    var v = parseInt(req.data.v);
-    if (isNaN(v))
-        v = versions.size();
-    if (v <= 0 || v > versions.size()) {
-        res.data.body = msg("history_no_versions");
-    } else {
-        var v1 = v == 1 ? {body: ""} : versions.get(v-2);
-        var v2 = versions.get(v-1);
-        if (this.checkAccess("manage") && req.data.deleteVersion && v2) {
-            v2.remove();
-            versions.removeChild(v2);
-            res.message = msg("history_delete_confirm");
-            res.redirect(this.href("history"));
-        }
-        if (this.checkAccess("edit") && req.data.revertVersion && v1) {
-            this.updateFromPage(v1);
-            this.addVersionInfo();
-            res.message = msg("history_revert_confirm");
-            res.redirect(this.href());
-        }
-        res.push();
-        var prev = msg("history_previous_version");
-        var next = msg("history_next_version");
-        if (v > 1) 
-            Html.link({href: this.href("history.diff")+"?v="+(v-1)}, prev);
-        else
-            res.write(prev);
-        res.write("&nbsp;&nbsp;");
-        Html.link({href: this.href("history")}, msg("history_overview"));
-        res.write("&nbsp;&nbsp;");
-        if (v < versions.size())
-            Html.link({href: this.href("history.diff")+"?v="+(v+1)}, next);
-        else
-            res.write(next);
-        var author = v2.creator ? 
-            v2.creator.getHtmlLink({},{}) : 
-            msg("history_anonymous");
-        var editDate = v2.modifytime.format("dd. MMMM yyyy, HH:mm");
-        res.write(msg("history_version_header_2", v, author, editDate));
-        var form1 = this.getRenderedFormProperties(v1.formdata ? v1.getFormData() : {});
-        var form2 = this.getRenderedFormProperties(v2.getFormData());
-        diff(v1.body, v2.body, form1, form2);
-        res.write("<table><tr>");
-        if (this.checkAccess("edit")) {
-            res.write("<td valign='top'>");
-            Html.form({onSubmit: "return confirm('"+msg("history_revert_ask")+"')"});
-            Html.hidden({name: "v", value: v})
-            Html.submit({name: "revertVersion", value: msg("history_revert_button")}); 
-            Html.closeTag("form");
-            res.write("</td>");
-        }
-        if (this.checkAccess("manage")) {
-            res.write("<td valign='top'>");
-            Html.form({onSubmit: "return confirm('"+msg("history_delete_ask")+"')"});
-            Html.hidden({name: "v", value: v})
-            Html.submit({name: "deleteVersion", value: msg("history_delete_button")});
-            Html.closeTag("form");
-            res.write("</td>");
-        }
-        res.write("</tr></table>");
-        res.data.body = res.pop();
-    }
-    this.renderSkin("page");
-}
-
-function link_action() {
-    res.push();
-    Html.form();
-    var table = new Html.TableWriter(2, {table: { cellpadding: 3}});
-    table.write("Link type:");
-    table.write(Html.Input({name: "type", value: req.data.type}));
-    table.write("Target page:");
-    table.write(Html.Input({name: "page", value: req.data.page}));
-    table.write();
-    table.write(Html.Submit({name: "create", value: "Create"}) + " " + 
-                Html.Submit({name: "remove", value: "Remove"}));
-    table.close();
-    
-    if (req.data.page) {
-        var page = this.getPage(req.data.page);
-        var type = req.data.type ? req.data.type : "testing";
-        if (page) {
-            if (req.data.remove) {
-                this.removeLink(type, "out", page);
-            } else if (req.data.create) {
-                this.addLink(type, "out", page);
-            }
-        }
-        res.redirect(this.href("link"));
-    }
-
-    res.write("<h4>Outgoing links</h4>");
-    var linkgroups = this.links_out.list();
-    for (var i in linkgroups) {
-        var group = linkgroups[i].list();
-        for (var j in group) { 
-            var link = group[j];
-            res.writeln(linkgroups[i].groupname+" -> "+
-                      link.target.getHtmlLink({}, {}));
-            res.writeln("<br />");
-        }
-    } 
-    res.data.body = res.pop();
-    this.renderSkin("page");
-}
-
-/**
- * Main page action.
- */
-function main_action() {
-    res.data.header = stripTags(res.data.title);
-    res.data.body = this.getBody();
-    // if empty body a list of child pages may be handy
-    if (!res.data.body || !res.data.body.trim()) {
-        res.push();
-        this.list_macro({});
-        res.data.body = res.pop();
-    } 
-    this.renderSkin("page");
-}
-
-/**
- * Create a new page.
- */
-function create_action() {
-    var name = checkPageName(req.data.name);
-    name = this.processChildPageName(name);
-    var type = req.data.type ? req.data.type : this.getChildType();
-    var it = this.newChildPage(name, type);
-    name = it.name;
-    if (req.data.save) {
-        var p = req.data.parent != null ?
-            path[req.data.parent] : this;
-        if (!p)
-            p = this;
-        if (name && name.length > 0) {
-            if (p.get(name)) {
-                res.message = msg("create_page_exists", name);
-            } else {
-                it.creator = it.modifier = session.user;
-                it.createtime = it.modifytime = new Date();
-                p.addChildPage(it);
-                it.readEditForm(true);
-                it.addVersionInfo();
-                res.message = msg("create_confirm", it.name);
-                this.childCreated(it);
-                pageCreated(it);
-                res.redirect(it.href());
-            }
-        } else {
-            res.message = msg("create_enter_name");
-        }
-    }
-    if (req.isPost()) {
-        it.readEditForm(false);
-        if (req.data.preview) {
-            res.data.body = it.renderSkinAsString("body#preview");
-            res.data.body += it.renderSkinAsString("create");
-            res.message = msg("preview_message")
-            this.renderSkin("page");
-            return;
-        }
-    }
-    // if childform is set and user is not admin skip the type chooser
-    res.meta.hideTypeChooser = (this.childform && (res.meta.roles & ADMIN) == 0);
-    res.data.body = it.renderSkinAsString("create");
-    this.renderSkin("page");
-}
-
-/**
- * Edit this page.
- */
-function edit_action() {
-    // if user clicked "save" read form data
-    if (req.isPost()) {
-        if (req.data.save) {
-            if(req.data.body){
-                // replace break tags with newline for fckEditor workaround
-                req.data.body = req.data.body.replace(/<br[^>]*>[\n\r]*/g, "\r\n");
-            }
-            // get old body and formdata to check if we need to create new version
-            var oldBody = this.body;
-            var oldFormdata = this.getFormData().clone();
-            this.readEditForm(true);
-            this.modifier = session.user;
-            this.modifytime = new Date();
-            // create version info
-            if (getDiffs(oldBody, this.body) || objectDiff(oldFormdata, this.getFormData()))
-                this.addVersionInfo();
-            res.message = msg("edit_confirm");
-            if (this.getParent())
-                this.getParent().childUpdated(this);
-            pageUpdated(this);
-            res.redirect(this.href());
-        } else if (req.data.preview) {
-            var p = newInstance(this.name, this._prototype);
-            p.readEditForm(false);
-            res.data.body = p.renderSkinAsString("body#preview");
-            res.data.body += p.renderSkinAsString("edit");
-            this.renderSkin("page");
-            return
-        }
-    }
-    res.data.body = this.renderSkinAsString("edit");
-    this.renderSkin("page");
-}
-
-/**
- * List this page.
- */
-function list_action() {
-    if (req.data.save) {
-        var order = req.data.weight_array;
-        if (!order) 
-            order = [req.data.weight];
-        var names = req.data.name_array;
-        if (!names) names = [req.data.name];
-        for (var i in order) {
-           var pos = parseInt(order[i]);
-           if (isNaN(pos)) pos = null;
-           var it = this.get(names[i]);
-           if (it) {
-               it.weight = pos;
-           }
-        }
-        // re-add the child nodes ordered by weight
-        var list = this.listSorted("weight");
-        for (var i in list) {
-            if (list[i].weight) {
-                this.addAt(i, list[i]);
-            }
-        }
-        res.redirect(this.href("list")+"?sort=weight");
-    }
-
-    if (this.size() > 0)
-        res.data.body = this.renderSkinAsString("list");
-    else
-        res.data.body = "<i>--- no child pages ---</i>"
-    this.renderSkin("page");
-}
-
-/**
- * Delete this page.
- */
-function move_action() {
-    if (!this.getParent()) {
-        res.message = "Can't move root page!";
-        res.redirect (this.href());
-    }
-    if (req.data.save) {
-        var it = this.getPage(req.data.path);
-        if (it) {
-            var p = it;
-            var isChild = false;
-            while (p) {
-                if (p == this)
-                    isChild = true;
-                p = p.getParent();
-            }
-            if (!isChild) {
-                var name = req.data.name ? req.data.name : this.name;
-                if (it.get(name)) {
-                    res.message = msg("move_page_exists", name);
-                } else if (this.getParent() != it) {
-                    this.getParent().removeChild(this);
-                    this.name = name;
-                    it.addChildPage(this);
-                    res.redirect(this.href());
-                }
-            } else {
-                res.message = msg("move_invalid_target");
-            }
-        } else {
-            res.message = msg("move_target_not_found");
-        }
-    }
-    res.push();
-    res.write("<p>");
-    res.write(msg("move_label"));
-    res.write("</p>");
-    Html.form({method: "post"});
-    Html.input({name: "path", value: req.data.path, size: 30});
-    res.write (" ");
-    Html.submit({name: "save", value: msg("move_button")});
-    res.writeln("</form></p>");
-    res.data.body = res.pop();
-    this.renderSkin("page");
-}
-
-
-/**
- * Delete this page.
- */
-function delete_action() {
-    if (!this.getParent()) {
-        res.message = msg("delete_root");
-        res.redirect(this.href());
-    }
-    if (req.data.cancel) {
-        this.cache.deleteKey = null;
-        res.message = msg("delete_canceled");
-        res.redirect(this.href());
-    }
-    if (req.data.save && req.data.key && 
-        req.data.key == this.cache.deleteKey) {
-        var parent = this.getParent();
-        // remove the page
-        this.removePage();
-        res.message = msg("delete_confirm", this.name);
-        if (parent)
-            parent.childDeleted(this);
-        pageDeleted(this);
-        res.redirect(parent.href());
-    }
-    this.cache.deleteKey = Math.random(10);
-    res.push();
-    res.write("<p>");
-    res.write(msg("delete_ask", this.name));
-    res.write("</p>");
-    Html.form({method: "post"});
-    Html.hidden({name: "key", value: this.cache.deleteKey});
-    Html.submit({name: "save", value: msg("delete_button")});
-    res.write(" ");
-    Html.submit({name: "cancel", value: msg("delete_cancel")});
-    res.data.body = res.pop();
-    this.renderSkin("page");
-    return;
-}
-
-/**
- * Comment action
- */
-function comment_action() {
-    if (req.isPost()) {
-        var cmt = new Comment("comment");
-        cmt.createtime = cmt.modifytime = new Date();
-        cmt.creator = cmt.modifier = session.user;
-        cmt.body = req.data.body.trim();
-        if (req.data.save) {
-            cmt.collection = "comment";
-            // set parent reference manually for embedded dbs
-            cmt.parent = this;
-            this.comment_pages.add(cmt);
-            res.message = msg("comment_added");
-            cmt.addVersionInfo();
-            pageCreated(cmt);
-        } else if (req.data.preview) {
-            res.data.body = cmt.renderSkinAsString("body#preview");
-            res.data.body += cmt.renderSkinAsString("edit");
-            res.message = msg("comment_preview_message")
-            this.renderSkin("page");
-            return;            
-        }
-    }
-    res.redirect(this.href());
-}
-
-/**
- * Attachment action
- */
-function attach_action() {
-    var attachments = this.getXmlData("attachments", true);
-    var list = attachments.list();
-    var form = Html.Form({method: "post", action: this.href("attach.delete"),
-                          name: "deleteForm", target: "confirm"});
-    if (list.length > 0) {
-        // style for listing table
-        var tableStyle = {
-            table: {"class": "list", border:"0", cellspacing:"0", cellpadding:"0" },
-            trEven: {"class": "even"},
-            trOdd: {"class": "odd"}
-        };
-        var table = new Html.TableBuilder(4, tableStyle);
-        // table.writeHeader = true;
-        table.add("", {"class": "caption"});
-        table.add("name", {"class": "caption"});
-        table.add("type", {"class": "caption"});
-        table.add("size", {"class": "caption"});
-        for (var i = 0; i < list.length; i++) {
-            table.add(Html.Checkbox({name: "file", value: i}));
-            table.add(Html.A({href: this.getStaticUrl(list[i].filename)}, list[i].filename));
-            table.add(list[i].contentType);
-            table.add(list[i].contentLength + " bytes");
-        }
-        form.add(table)
-        form.add(Html.P({style: "text-align: right;"},
-                    Html.Submit({name: "deleteFiles",
-            onclick:"openPopup(null,'confirm',300,350); document.forms.deleteForm.submit(); return false;",
-            value: msg("upload_delete_button")})));
-    }
-    res.data.body = form.toString() + this.renderSkinAsString("upload");
-    this.renderSkin("page");
-}
-
-/**
- * Delete attachment action
- */
-function attach_delete_action() {
-    var files = req.data.file_array;
-    if (!files)
-        files = req.data.file == null ? [] : [req.data.file];
-
-    res.push();
-    res.data.title = (msg("upload_delete_confirm"));
-    var attachments = this.getXmlData("attachments", true);
-    Html.openTag("ul");
-    for (var i=files.length-1; i>=0; i--) {
-        var upload = attachments[files[i]];
-        Html.li({}, upload.linkAsString(this.getStaticUrl()));
-    }
-    Html.closeTag("ul");
-    var callback = function() {
-        if (req.data.confirm) {
-            var attachments = this.getXmlData("attachments", true);
-            var dir = this.getStaticDir(true);
-            for (var i = files.length-1; i>=0; i--) {
-                var upload = attachments[files[i]];
-                if (upload) {
-                    var file = new File(dir, upload.filename);
-                    file.remove();
-                    attachments.removeChild(upload);
-                }
-            }
-            this.setXmlData("attachments", attachments);
-            session.message = msg(files.length == 1 ?
-                "upload_deleted" : "upload_deleted_multi", files.length);
-        }
-        renderSkin("closePopup", {parentUrl: this.href("attach")});
-    };
-    Html.form({method: "post", action: Html.registerCallback(callback, this)});
-    Html.hidden({name: "deleteFiles", value: "true"});
-    for (var i=0; i<files.length; i++) {
-        Html.hidden({name: "file", value: files[i]});
-    }
-
-    res.writeln("<br />");
-    Html.openTag("p", {style: "text-align: center;"});
-    Html.submit({name: "confirm", value: "Delete"});
-    res.write(" ");
-    Html.button({name: "cancel", value: "Cancel", onClick: "window.close();"});
-    Html.closeTag("p");
-    res.data.body = res.pop();
-    this.renderSkin("popup");
-}
-
-/**
- * Upload attachment action
- */
-function attach_upload_action() {
-    if (req.isPost() && req.data.upload && req.data.file.contentLength > 0) {
-        var upload = new Upload(req.data.file, req.data.name);
-        var error;
-        var attachments = this.getXmlData("attachments", true);
-        var list = attachments.list();
-        for (var i in list) {
-            if (list[i].name == upload.name) {
-                error = msg("upload_exists", upload.name);
-                break;
-            }
-        }
-        if (error) {
-            res.message = error;
-            res.redirect(this.href("attach"));
-        }
-        upload.writeToFile(req.data.file, this.getStaticDir(true));
-        attachments.add(upload);
-        this.setXmlData("attachments", attachments);
-        res.message = msg("upload_saved", upload.name);
-        res.redirect(this.href("attach"));
-    }
-}
-
-/**
- * Login action
- */
-function login_action() {
-    var users = getService("users");
-    if (!req.data.referrer) {
-        // invalidate last location if request hasn't got any referrer
-        session.data.lastLocation = null;
-    }
-    if (!users) {
-        res.data.body = "User Service is not configured. Can't login.";
-    } else {
-        if (req.data.login) {
-            var user = users.get(req.data.name);
-            if (user && user.getFormData().password == req.data.password) {
-                session.login(user);
-                setAutoLoginCookie(user.name, req.data.password);
-                res.message = msg("login_succeeded", root.name, user.name);
-                var location = session.data.lastLocation;
-                session.data.lastLocation = null;
-                if (!location)
-                    location = this.href(); 
-                res.redirect(location);
-            } else {
-                res.message = msg("login_failed");
-            }
-        }
-
-        res.push();
-        Html.form({method: "post", action: this.href("login")});
-        res.write("<p><b>"+msg("login_please")+"</b></p>");
-        var table = new Html.TableWriter(2, {td: {style: "padding-bottom: 6px;"}});
-        table.write(msg("login_username"));
-        table.write(Html.Input({name: "name", value: req.data.name}));
-        table.write(msg("login_password"));
-        table.write(Html.Password({name: "password"}));
-        table.write();
-        table.write(Html.Submit({name: "login", value: "Go"}));
-        table.close();
-        Html.closeTag("form");
-        res.writeln("<br />");
-        Html.a({href: this.href("register")}, msg("login_register"));
-        res.data.body = res.pop();
-    }
-    this.renderSkin("page");
-}
-
-/**
- *
- */
-function logout_action() {
-    if (session.user) {
-        res.message = msg("logout", session.user.name);
-        session.logout();
-        unsetAutoLoginCookie();
-    }
-    res.redirect(this.href());
-}
-
-/**
- * Create a new user object.
- */
-function register_action() {
-    var users = getService("users");
-    if (!users) {
-        res.data.body = "User Service is not configured. Can't login.";
-        return;
-    } 
-    
-    var name = checkPageName(req.data.name);
-    var it = users.newChildPage(name);
-    
-    if (req.data.save) {
-        if (name && name.length > 0) {
-            if (users.get(name)) {
-                res.message = msg("register_user_exists", name);
-            } else if (req.data.password != req.data.password_2) {
-                res.message = msg("register_passwords_dont_match");
-            } else {
-                it.creator = it.modifier = it;
-                it.createtime = it.modifytime = new Date();
-                users.addChildPage(it);
-                it.readEditForm(true);
-                res.message = msg("register_confirm", it.name);
-                users.childCreated(it);
-                pageCreated(it);
-                // if first user, make it admin
-                if (users.size() == 1) {
-                    it.addLink("system:admin", "out", root);
-                }
-                // if current user is not logged in, log in as new user
-                if (!session.user) {
-                    session.login(it);
-                    setAutoLoginCookie(it.name, req.data.password);
-                    res.message += msg("register_welcome");
-                }
-                res.redirect(this.href());
-            }
-        } else {
-            res.message = msg("register_enter_name");
-        }
-    }
-    if (req.isPost()) {
-        it.readEditForm(false);
-    }
-    res.data.body = "<h4>"+msg("register_please")+"</h4>";
-    res.data.body += it.renderSkinAsString("create");
-    this.renderSkin("page");
-}
-
-/**
- * 404 action
- */
-function notfound_action() {
-    res.data.title = msg("notfound_title");
-    res.data.body = "<h3>"+res.data.title+"</h3>";
-    res.data.body += "<p>"+msg("notfound_message", this.href()+req.path)+"</p>";
-    this.renderSkin("page");
-}
-
-/**
- * error action
- */
-function error_action() {
-    res.data.title = msg("error_title");
-    res.data.body = "<h3>"+res.data.title+"</h3>";
-    res.data.body += "<p>"+msg("error_body")+"</p>";
-    res.data.body += "<p>"+res.error+"</p>";
-    this.renderSkin("page");
-}
-
-/**
- * Stylesheet action
- */
-function stylesheet_css_action() {
-    res.contentType = "text/css";
-    this.renderSkin("stylesheet");
-}
-
-/**
- * Javascript action
- */
-function javascript_js_action() {
-    res.contentType = "text/javascript";
-    this.renderSkin("javascript");
-}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.