diff --git a/isso/client/admin.js b/isso/client/admin.js deleted file mode 100644 index a762267..0000000 --- a/isso/client/admin.js +++ /dev/null @@ -1,41 +0,0 @@ -/* Copyright 2012, Martin Zimmermann . All rights reserved. - * License: BSD Style, 2 clauses. See isso/__init__.py. - */ - - -var isso = isso || {}; - - -function initialize() { - - $('div.buttons > a').forEach(function(item) { - - var node = $(item).parent().parent().parent().parent()[0], - id = node.getAttribute("data-id"); - isso.path = node.getAttribute("data-path"); - - if (item.text == 'Approve') { - $(item).on('click', function(event) { - isso.approve(id, function(status, rv) { - $(node).prependTo($('#approved')); - $('.approve', node).remove(); - }); - event.stop(); - }); - } else { - $(item).on('click', function(event) { - if (confirm("RLY?") == true) { - isso.remove(id, function(status, rv) { - $(node).remove() - }); - }; - event.stop(); - }); - }; - }); -}; - - -$.domReady(function() { - initialize(); -}); diff --git a/isso/client/app/api.js b/isso/client/app/api.js index 187c58b..da61266 100644 --- a/isso/client/app/api.js +++ b/isso/client/app/api.js @@ -3,7 +3,7 @@ * License: BSD Style, 2 clauses. See isso/__init__.py. */ -define(["lib/q", "app/models"], function(Q, models) { +define(["lib/q"], function(Q) { // http://stackoverflow.com/questions/17544965/unhandled-rejection-reasons-should-be-empty Q.stopUnhandledRejectionTracking(); diff --git a/isso/client/app/forms.js b/isso/client/app/forms.js index 008e4d6..5b48c88 100644 --- a/isso/client/app/forms.js +++ b/isso/client/app/forms.js @@ -1,4 +1,4 @@ -define(["lib/HTML", "helper/utils"], function(HTML, utils) { +define(["lib/HTML"], function(HTML) { var msgbox = function(defaults) { diff --git a/isso/client/app/isso.js b/isso/client/app/isso.js index 2db4c5f..4463080 100644 --- a/isso/client/app/isso.js +++ b/isso/client/app/isso.js @@ -5,12 +5,7 @@ */ -define(["lib/q", "lib/HTML", "helper/utils", "./api", "./forms", "./logging", "helper/identicons"], function(Q, HTML, utils, api, forms, logging, identicons) { - - var defaults = { - text: "Lorem ipsum ...", author: "Anonymous", - email: "info@example.org", website: "..." - }; +define(["lib/q", "lib/HTML", "helper/utils", "helper/identicons", "./api", "./forms"], function(Q, HTML, utils, identicons, api, forms) { var insert = function(comment, scrollIntoView) { /* @@ -169,8 +164,6 @@ define(["lib/q", "lib/HTML", "helper/utils", "./api", "./forms", "./logging", "h var init = function() { - // console.log(utils.heading()); - var rootmsgbox = forms.msgbox({}); HTML.query("#isso-thread").add("div#isso-root").add(rootmsgbox); rootmsgbox.query("input[type=submit]").addEventListener("click", function(event) { diff --git a/isso/client/app/logging.js b/isso/client/app/logging.js deleted file mode 100644 index ff7e8cb..0000000 --- a/isso/client/app/logging.js +++ /dev/null @@ -1,9 +0,0 @@ -define({ - error: function(err) { - if ("status" in err && "reason" in err) { - console.error("%i: %s", err.status, err.reason) - } else { - console.error(err.stack) - } - } -}) \ No newline at end of file diff --git a/isso/client/app/models.js b/isso/client/app/models.js deleted file mode 100644 index e587d17..0000000 --- a/isso/client/app/models.js +++ /dev/null @@ -1,10 +0,0 @@ -define(function() { - - function Comment(data) { - this.text = data["text"]; - } - - return { - Comment: Comment - } -}); \ No newline at end of file diff --git a/isso/client/client.js b/isso/client/client.js deleted file mode 100644 index 4d465fc..0000000 --- a/isso/client/client.js +++ /dev/null @@ -1,216 +0,0 @@ -/* Copyright 2012, Martin Zimmermann . All rights reserved. - * License: BSD Style, 2 clauses. See isso/__init__.py. - */ - - var isso = isso || {}; - - -function form(id, defaults, func) { - /* - Returns HTML for form and registers submit call. - - Synopsis: `isso_N` is the comment with the id N. `issoform` is a new - form to write an answer to the article or answer to a comment using - `issoform_N` where N is the id to respond to. - - :param id: comment id - :param returnfunc: function, that takes one argument (the HTML to display the form) - :param func: function, when the user submits the form - */ - - var rv = $(brew([ - 'div', {'class': 'issoform', 'id': 'issoform' + (id ? ('_' + id) : '')}, - ['div', - ['input', {'type': 'text', 'name': 'author', 'id': 'author', 'value': defaults.author || "", 'placeholder': "Name"}]], - ['div', - ['input', {'type': 'email', 'name': 'email', 'id': 'email', 'value': defaults.email || "", 'placeholder': "Email"}]], - ['div', - ['input', {'type': 'url', 'name': 'website', 'id': 'website', 'value': defaults.website || "", 'placeholder': "Website"}]], - ['div', - ['textarea', defaults.text || "", {'rows': '10', 'name': 'text', 'id': 'comment', 'placeholder': "Comment"}]], - ['div', - ['input', {'type': 'submit', 'value': 'Add Comment'}]], - ])); - - $('input[type="submit"]', rv).on('click', function(event) { - func(rv, id); - event.stop(); - }); - return rv; -} - - -function extract(form, parent) { - return { - text: $('textarea[id="comment"]', form).val() || null, - author: $('input[id="author"]', form).val() || null, - email: $('input[id="email"]', form).val() || null, - website: $('input[id="website"]', form).val() || null, - parent: parent - }; -} - - -function edit() { - -} - - -function commit(form, parent) { - isso.create(extract(form, parent), function(status, rv) { - if (status == 201 || status == 202) { - insert(JSON.parse(rv)); - } - }); -} - - -var insert = function insert(post) { - /* - Insert a comment into #isso_thread. - - :param post: JSON from API call - */ - - var path = encodeURIComponent(window.location.pathname), - date = new Date(parseInt(post['created']) * 1000); - - // create