Return-Path: X-Original-To: apmail-clerezza-commits-archive@www.apache.org Delivered-To: apmail-clerezza-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D65FC10EAC for ; Tue, 8 Oct 2013 21:20:58 +0000 (UTC) Received: (qmail 4765 invoked by uid 500); 8 Oct 2013 21:20:46 -0000 Delivered-To: apmail-clerezza-commits-archive@clerezza.apache.org Received: (qmail 4324 invoked by uid 500); 8 Oct 2013 21:20:43 -0000 Mailing-List: contact commits-help@clerezza.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@clerezza.apache.org Delivered-To: mailing list commits@clerezza.apache.org Received: (qmail 4263 invoked by uid 99); 8 Oct 2013 21:20:40 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Oct 2013 21:20:40 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Oct 2013 21:20:36 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id C2F4023889FA; Tue, 8 Oct 2013 21:20:14 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1530427 [3/3] - in /clerezza/trunk/platform.editor: ./ src/main/resources/META-INF/ src/main/resources/META-INF/resources/ src/main/resources/META-INF/resources/tools/ src/main/resources/META-INF/resources/tools/editor/ src/main/resources/... Date: Tue, 08 Oct 2013 21:20:14 -0000 To: commits@clerezza.apache.org From: reto@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20131008212014.C2F4023889FA@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Modified: clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreate.scala URL: http://svn.apache.org/viewvc/clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreate.scala?rev=1530427&r1=1530426&r2=1530427&view=diff ============================================================================== --- clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreate.scala (original) +++ clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreate.scala Tue Oct 8 21:20:13 2013 @@ -19,16 +19,16 @@ import org.apache.felix.scr.annotations. @Service(Array(classOf[TypeRenderlet])) class TitledContentCreate extends SRenderlet { - val getRdfType = DISCOBITS.TitledContent + val getRdfType = DISCOBITS.TitledContent override val getMediaType = MediaType.TEXT_HTML_TYPE - override def getModePattern = "create" + override def getModePattern = "create" - override def renderedPage(arguments: XmlResult.Arguments) = { - new XmlResult(arguments) { - override def content = { - val initScript = """ + override def renderedPage(arguments: XmlResult.Arguments) = { + new XmlResult(arguments) { + override def content = { + val initScript = """ var id_counter = 1; jQuery(document).ready(function() { @@ -57,42 +57,42 @@ class TitledContentCreate extends SRende saveRemote: {"contentType": "application/ld+json"} });*/ });""" - -{for (part <- res/DISCOBITS.contains; if ((part/DISCOBITS.pos*) == "0")) yield - - - Editing: {part/DISCOBITS.holds/DISCOBITS.infoBit*} - - - - - - - - - - - - - - - - - } - - {render(res, "create-naked")} - - - } - } - } + + {for (part <- res/DISCOBITS.contains; if ((part/DISCOBITS.pos*) == "0")) yield + + + Editing: {part/DISCOBITS.holds/DISCOBITS.infoBit*} + + + + + + + + + + + + + + + + + } + + {render(res, "rdfa-naked")} + + + } + } + } } \ No newline at end of file Copied: clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentEtch.scala (from r1530046, clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreate.scala) URL: http://svn.apache.org/viewvc/clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentEtch.scala?p2=clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentEtch.scala&p1=clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreate.scala&r1=1530046&r2=1530427&rev=1530427&view=diff ============================================================================== --- clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreate.scala (original) +++ clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentEtch.scala Tue Oct 8 21:20:13 2013 @@ -17,82 +17,125 @@ import org.apache.felix.scr.annotations. */ @Component @Service(Array(classOf[TypeRenderlet])) -class TitledContentCreate extends SRenderlet { +class TitledContentEtch extends SRenderlet { - val getRdfType = DISCOBITS.TitledContent + val getRdfType = DISCOBITS.TitledContent override val getMediaType = MediaType.TEXT_HTML_TYPE - override def getModePattern = "create" + override def getModePattern = "edit" - override def renderedPage(arguments: XmlResult.Arguments) = { - new XmlResult(arguments) { - override def content = { - val initScript = """ - var id_counter = 1; - - jQuery(document).ready(function() { - // Prepare VIE - //global for debuging - v = new VIE(); - v.use(new v.RdfaService()); - - // Load Create.js with your VIE instance - jQuery("body").midgardCreate({ - vie: v, - url: function() { - return "/tools/editor/create/"; }, - stanbolUrl: "/" + override def renderedPage(arguments: XmlResult.Arguments) = { + new XmlResult(arguments) { + override def content = { + val initScript = """ + var discoBitsCollection = new Backbone.Collection(); + (function() { + + function saveAllModified() { + var modifiedModels = discoBitsCollection.filter(function(model) {return model.hasChanged()}) + var modified = new Backbone.Collection(modifiedModels); + alert("would save: " +modifiedModels+" models "+ JSON.stringify(modified.toJSON())) + } + + var InfoBit = Backbone.Model.extend({ + defaults: { + "@type": 'disco:XHTMLInfoDiscoBit', + "disco:infoBit": 'Some content' + }, + initialize: function() { + console.log('This model has been initialized.'); + var m = this; + this.on('change', function(msg) { + console.log('A value for this model has changed: '); + console.log(m.changed); + console.log(m.get("@id")); + console.log('A value for this model has changed: '+m.hasChanged(null)); + m.foo = "bar" }); - Backbone.sync = function(method, model) { - console.log("I've been passed " + method + " with " + JSON.stringify(model)); - if(method === 'create'){ model.set('id', id_counter++); } - console.log("method: "+method); - console.log(id_counter); - console.log(this.ajaxSettings.contentType); - }; - /*jQuery('body').midgardStorage({ - vie: new VIE(), - url: function (item) { return '/some32/url'; }, - saveRemote: {"contentType": "application/ld+json"} - });*/ - });""" - -{for (part <- res/DISCOBITS.contains; if ((part/DISCOBITS.pos*) == "0")) yield - - - Editing: {part/DISCOBITS.holds/DISCOBITS.infoBit*} - - - - - - - - - - - - - - - - - } - - {render(res, "create-naked")} - - - } - } - } + } + }); + + var InfoBitView = Backbone.View.extend({ + initialize: function() { + _.bindAll(this, 'save') + this.model.bind('save', this.save); + var infoBit = $(this.el).find('[property="disco:infoBit"]').html() + console.log(this.model.hasChanged(null)) + //this.model.set("disco:infoBit", infoBit) + console.log(this.model.hasChanged(null)) + this.stickit(); + }, + events: { + 'mousedown .editable': 'editableClick' + }, + bindings: { + '[property="disco:infoBit"]': 'disco:infoBit' + }, + editableClick: etch.editableInit, + save: function() { + + // normally you would call model.save() here but this is a demo + // $(this.el).find('.editable').effect('highlight', {color: 'yellow'}); + // $('.save-event').fadeIn('fast', function() { + // setTimeout($(this).fadeOut('slow'), 10000); + // }); + console.log("this modified: "); + console.log(this.model.get("@id")); + console.log(this.model.changed); + console.log("this is modified: "+this.model.hasChanged(null)); + saveAllModified(); + } + + }); + + //$article = $('[property="disco:infoBit"]'); + $('[property="disco:infoBit"]').addClass("editable") + $('[property="disco:infoBit"]').attr("data-button-class", "all") + //this ensure two way binding with stickit + $('[property="disco:infoBit"]').attr("contenteditable", "true") + $article = $('[typeof="disco:XHTMLInfoDiscoBit"]'); + _.forEach($article, function(art) { + console.log(art); + var infoBit = $(art).find('[property="disco:infoBit"]').html() + var about = $(art).attr('about') + var model = new InfoBit({ + "@id": about, + "disco:infoBit": infoBit + }); + new InfoBitView({model: model, el: art, tagName: art.tagName}); + discoBitsCollection.add(model) + }); + //var view = new articleView({model: model, el: $article[0], tagName: $article[0].tagName}); + + })() + + Backbone.on('all', function(s) { + console.log('Handling all: ' + s); + });""" + + {for (part <- res/DISCOBITS.contains; if ((part/DISCOBITS.pos*) == "0")) yield + + + + Editing: {part/DISCOBITS.holds/DISCOBITS.infoBit*} + + + } + + {render(res, "rdfa-naked")} + + + + + + + + + } + } + } } \ No newline at end of file Copied: clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentRDFaNaked.scala (from r1530046, clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreateNaked.scala) URL: http://svn.apache.org/viewvc/clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentRDFaNaked.scala?p2=clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentRDFaNaked.scala&p1=clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreateNaked.scala&r1=1530046&r2=1530427&rev=1530427&view=diff ============================================================================== --- clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentCreateNaked.scala (original) +++ clerezza/trunk/platform.editor/src/main/scala/org/apache/clerezza/platform/editor/renderlets/TitledContentRDFaNaked.scala Tue Oct 8 21:20:13 2013 @@ -12,13 +12,13 @@ import org.apache.felix.scr.annotations. @Component @Service(Array(classOf[TypeRenderlet])) -class TitledContentCreateNaked extends SRenderlet { +class TitledContentRDFaNaked extends SRenderlet { val getRdfType = DISCOBITS.TitledContent override val getMediaType = MediaType.TEXT_HTML_TYPE - override def getModePattern = "create-naked" + override def getModePattern = "rdfa-naked" override def renderedPage(arguments: XmlResult.Arguments) = { new XmlResult(arguments) { @@ -27,12 +27,12 @@ class TitledContentCreateNaked extends S {for (part <- res/DISCOBITS.contains; if ((part/DISCOBITS.pos*) == "0")) yield 0 -

{render(part/DISCOBITS.holds, "create-naked")}

+

{render(part/DISCOBITS.holds, "rdfa-naked")}

} {for (part <- res/DISCOBITS.contains; if ((part/DISCOBITS.pos*) == "1")) yield
{part/DISCOBITS.pos*}
-
{render(part/DISCOBITS.holds, "create-naked")}
+
{render(part/DISCOBITS.holds, "rdfa-naked")}
} }