a:83:{s:9:"#provides";s:33:"dojox.atom.widget.FeedEntryEditor";s:9:"#resource";s:30:"atom/widget/FeedEntryEditor.js";s:9:"#requires";a:7:{i:0;a:2:{i:0;s:6:"common";i:1;s:33:"dojox.atom.widget.FeedEntryViewer";}i:1;a:3:{i:0;s:6:"common";i:1;s:13:"dijit._Widget";i:2;s:5:"dijit";}i:2;a:3:{i:0;s:6:"common";i:1;s:16:"dijit._Templated";i:2;s:5:"dijit";}i:3;a:3:{i:0;s:6:"common";i:1;s:16:"dijit._Container";i:2;s:5:"dijit";}i:4;a:3:{i:0;s:6:"common";i:1;s:12:"dijit.Editor";i:2;s:5:"dijit";}i:5;a:3:{i:0;s:6:"common";i:1;s:18:"dijit.form.TextBox";i:2;s:5:"dijit";}i:6;a:3:{i:0;s:6:"common";i:1;s:25:"dijit.form.SimpleTextarea";i:2;s:5:"dijit";}}s:33:"dojox.atom.widget.FeedEntryEditor";a:5:{s:4:"type";s:8:"Function";s:6:"chains";a:2:{s:9:"prototype";a:1:{i:0;s:33:"dojox.atom.widget.FeedEntryViewer";}s:4:"call";a:1:{i:0;s:33:"dojox.atom.widget.FeedEntryViewer";}}s:7:"summary";s:87:"An ATOM feed entry editor that allows viewing of the individual attributes of an entry.";s:11:"description";s:87:"An ATOM feed entry editor that allows viewing of the individual attributes of an entry.";s:9:"classlike";b:1;}s:48:"dojox.atom.widget.FeedEntryEditor._contentEditor";a:4:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:8:"instance";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"private";b:1;s:7:"summary";s:0:"";}s:45:"dojox.atom.widget.FeedEntryEditor._oldContent";a:3:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"private";b:1;s:7:"summary";s:0:"";}s:44:"dojox.atom.widget.FeedEntryEditor._setObject";a:3:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"private";b:1;s:7:"summary";s:0:"";}s:44:"dojox.atom.widget.FeedEntryEditor.enableEdit";a:2:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"summary";s:0:"";}s:55:"dojox.atom.widget.FeedEntryEditor._contentEditorCreator";a:3:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"private";b:1;s:7:"summary";s:0:"";}s:42:"dojox.atom.widget.FeedEntryEditor._editors";a:5:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:6:"Object";s:8:"instance";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"private";b:1;s:7:"summary";s:0:"";}s:48:"dojox.atom.widget.FeedEntryEditor.entryNewButton";a:2:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"summary";s:0:"";}s:43:"dojox.atom.widget.FeedEntryEditor._editable";a:4:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:8:"instance";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"private";b:1;s:7:"summary";s:0:"";}s:46:"dojox.atom.widget.FeedEntryEditor.templatePath";a:2:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:7:"summary";s:0:"";}s:44:"dojox.atom.widget.FeedEntryEditor.postCreate";a:4:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:6:"source";s:1101:" if(this.entrySelectionTopic !== ""){ this._subscriptions = [dojo.subscribe(this.entrySelectionTopic, this, "_handleEvent")]; } var _nlsResources = dojo.i18n.getLocalization("dojox.atom.widget", "FeedEntryViewer"); this.displayOptions.innerHTML = _nlsResources.displayOptions; this.feedEntryCheckBoxLabelTitle.innerHTML = _nlsResources.title; this.feedEntryCheckBoxLabelAuthors.innerHTML = _nlsResources.authors; this.feedEntryCheckBoxLabelContributors.innerHTML = _nlsResources.contributors; this.feedEntryCheckBoxLabelId.innerHTML = _nlsResources.id; this.close.innerHTML = _nlsResources.close; this.feedEntryCheckBoxLabelUpdated.innerHTML = _nlsResources.updated; this.feedEntryCheckBoxLabelSummary.innerHTML = _nlsResources.summary; this.feedEntryCheckBoxLabelContent.innerHTML = _nlsResources.content; _nlsResources = dojo.i18n.getLocalization("dojox.atom.widget", "FeedEntryEditor"); this.doNew.innerHTML = _nlsResources.doNew; this.edit.innerHTML = _nlsResources.edit; this.save.innerHTML = _nlsResources.save; this.cancel.innerHTML = _nlsResources.cancel;";s:7:"summary";s:0:"";}s:42:"dojox.atom.widget.FeedEntryEditor.setEntry";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:69:"Instance of dojox.atom.io.model.Entry to display for reading/editing.";}s:4:"feed";a:1:{s:4:"type";s:6:"object";}s:14:"leaveMenuState";a:1:{s:4:"type";s:7:"boolean";}}s:6:"source";s:784:" if(this._entry !== entry){ //If we swap entries, we don't want to keep the menu states and modes. this._editMode=false; leaveMenuState=false; }else{ leaveMenuState = true; } dojox.atom.widget.FeedEntryEditor.superclass.setEntry.call(this, entry, feed); this._editable = this._isEditable(entry); if(!leaveMenuState && !this._editable){ dojo.style(this.entryEditButton, 'display', 'none'); dojo.style(this.entrySaveCancelButtons, 'display', 'none'); } if(this._editable && this.enableEdit){ if(!leaveMenuState){ dojo.style(this.entryEditButton, 'display', ''); //TODO double check this &&... if(this.enableMenuFade && this.entrySaveCancelButton){ dojo.fadeOut({node: this.entrySaveCancelButton,duration: 250}).play(); } } }";s:7:"summary";s:55:"Function to set the current entry that is being edited.";s:11:"description";s:55:"Function to set the current entry that is being edited.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:53:"dojox.atom.widget.FeedEntryEditor.superclass.setEntry";}}}s:45:"dojox.atom.widget.FeedEntryEditor._toggleEdit";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:6:"source";s:289:" if(this._editable && this.enableEdit){ dojo.style(this.entryEditButton, 'display', 'none'); dojo.style(this.entrySaveCancelButtons, 'display', ''); this._editMode = true; //Rebuild the view using the same entry and feed. this.setEntry(this._entry, this._feed, true); }";s:7:"summary";s:64:"Internal function for toggling/enabling the display of edit mode";s:11:"description";s:64:"Internal function for toggling/enabling the display of edit mode";s:14:"return_summary";s:8:"Nothing.";s:7:"private";b:1;}s:46:"dojox.atom.widget.FeedEntryEditor._handleEvent";a:9:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:19:"entrySelectionEvent";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:66:"The topic message containing the entry that was selected for view.";}}s:6:"source";s:314:" if(entrySelectionEvent.source != this && entrySelectionEvent.action == "delete" && entrySelectionEvent.entry && entrySelectionEvent.entry == this._entry){ dojo.style(this.entryEditButton, 'display', 'none'); } dojox.atom.widget.FeedEntryEditor.superclass._handleEvent.call(this, entrySelectionEvent);";s:7:"summary";s:79:"Internal function for listening to a topic that will handle entry notification.";s:11:"description";s:79:"Internal function for listening to a topic that will handle entry notification.";s:14:"return_summary";s:8:"Nothing.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:57:"dojox.atom.widget.FeedEntryEditor.superclass._handleEvent";}}s:7:"private";b:1;}s:45:"dojox.atom.widget.FeedEntryEditor._isEditable";a:8:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:47:"The dojox.atom.io.model.Entry object to examine";}}s:6:"source";s:245:" var retVal = false; if(entry && entry !== null && entry.links && entry.links !== null){ for(var x in entry.links){ if(entry.links[x].rel && entry.links[x].rel == "edit"){ retVal = true; break; } } } return retVal;";s:7:"summary";s:68:"Internal function for determining of a particular entry is editable.";s:11:"description";s:146:"Internal function for determining of a particular entry is editable. This is used for determining if the delete action should be displayed or not.";s:14:"return_summary";s:53:"Boolean denoting if the entry seems editable or not..";s:7:"private";b:1;}s:42:"dojox.atom.widget.FeedEntryEditor.setTitle";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:15:"titleAnchorNode";a:2:{s:4:"type";s:8:"DOM node";s:7:"summary";s:41:"The DOM node to attach the title data to.";}s:8:"editMode";a:2:{s:4:"type";s:7:"boolean";s:7:"summary";s:65:"Boolean to indicate if the display should be in edit mode or not.";}s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:28:"The Feed Entry to work with.";}}s:6:"source";s:715:" if(!editMode){ dojox.atom.widget.FeedEntryEditor.superclass.setTitle.call(this, titleAnchorNode, editMode, entry); if(entry.title && entry.title.value && entry.title.value !== null){ this.setFieldValidity("title", true); } }else{ if(entry.title && entry.title.value && entry.title.value !== null){ if(!this._toLoad){ this._toLoad = []; } this.entryTitleSelect.value = entry.title.type; var editor = this._createEditor(titleAnchorNode, entry.title, true, entry.title.type === "html" || entry.title.type === "xhtml"); editor.name = "title"; this._toLoad.push(editor); this.setFieldValidity("titleedit",true); this.setFieldValidity("title",true); } }";s:7:"summary";s:92:"Function to set the contents of the title node in the template to some value from the entry.";s:11:"description";s:188:"Function to set the contents of the title node in the template to some value from the entry. This exists specifically so users can over-ride how the title data is filled out from an entry.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:53:"dojox.atom.widget.FeedEntryEditor.superclass.setTitle";}}}s:44:"dojox.atom.widget.FeedEntryEditor.setAuthors";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:17:"authorsAnchorNode";a:2:{s:4:"type";s:8:"DOM node";s:7:"summary";s:42:"The DOM node to attach the author data to.";}s:8:"editMode";a:2:{s:4:"type";s:7:"boolean";s:7:"summary";s:65:"Boolean to indicate if the display should be in edit mode or not.";}s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:28:"The Feed Entry to work with.";}}s:6:"source";s:449:" if(!editMode){ dojox.atom.widget.FeedEntryEditor.superclass.setAuthors.call(this, authorsAnchorNode, editMode, entry); if(entry.authors && entry.authors.length > 0){ this.setFieldValidity("authors", true); } }else{ if(entry.authors && entry.authors.length > 0){ this._editors.authors = this._createPeopleEditor(this.entryAuthorNode, {data: entry.authors, name: "Author"}); this.setFieldValidity("authors", true); } }";s:7:"summary";s:93:"Function to set the contents of the author node in the template to some value from the entry.";s:11:"description";s:189:"Function to set the contents of the author node in the template to some value from the entry. This exists specifically so users can over-ride how the title data is filled out from an entry.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:55:"dojox.atom.widget.FeedEntryEditor.superclass.setAuthors";}}}s:49:"dojox.atom.widget.FeedEntryEditor.setContributors";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:22:"contributorsAnchorNode";a:2:{s:4:"type";s:8:"DOM node";s:7:"summary";s:47:"The DOM node to attach the contributor data to.";}s:8:"editMode";a:2:{s:4:"type";s:7:"boolean";s:7:"summary";s:65:"Boolean to indicate if the display should be in edit mode or not.";}s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:28:"The Feed Entry to work with.";}}s:6:"source";s:509:" if(!editMode){ dojox.atom.widget.FeedEntryEditor.superclass.setContributors.call(this, contributorsAnchorNode, editMode, entry); if(entry.contributors && entry.contributors.length > 0){ this.setFieldValidity("contributors", true); } }else{ if(entry.contributors && entry.contributors.length > 0){ this._editors.contributors = this._createPeopleEditor(this.entryContributorNode, {data: entry.contributors, name: "Contributor"}); this.setFieldValidity("contributors", true); } }";s:7:"summary";s:98:"Function to set the contents of the contributor node in the template to some value from the entry.";s:11:"description";s:194:"Function to set the contents of the contributor node in the template to some value from the entry. This exists specifically so users can over-ride how the title data is filled out from an entry.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:60:"dojox.atom.widget.FeedEntryEditor.superclass.setContributors";}}}s:39:"dojox.atom.widget.FeedEntryEditor.setId";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:12:"idAnchorNode";a:2:{s:4:"type";s:8:"DOM node";s:7:"summary";s:38:"The DOM node to attach the ID data to.";}s:8:"editMode";a:2:{s:4:"type";s:7:"boolean";s:7:"summary";s:65:"Boolean to indicate if the display should be in edit mode or not.";}s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:28:"The Feed Entry to work with.";}}s:6:"source";s:356:" if(!editMode){ dojox.atom.widget.FeedEntryEditor.superclass.setId.call(this, idAnchorNode, editMode, entry); if(entry.id && entry.id !== null){ this.setFieldValidity("id", true); } }else{ if(entry.id && entry.id !== null){ this._editors.id = this._createEditor(idAnchorNode, entry.id); this.setFieldValidity("id",true); } }";s:7:"summary";s:90:"Function to set the contents of the ID node in the template to some value from the entry.";s:11:"description";s:185:"Function to set the contents of the ID node in the template to some value from the entry. This exists specifically so users can over-ride how the title data is filled out from an entry.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:50:"dojox.atom.widget.FeedEntryEditor.superclass.setId";}}}s:44:"dojox.atom.widget.FeedEntryEditor.setUpdated";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:17:"updatedAnchorNode";a:2:{s:4:"type";s:8:"DOM node";s:7:"summary";s:43:"The DOM node to attach the udpated data to.";}s:8:"editMode";a:2:{s:4:"type";s:7:"boolean";s:7:"summary";s:65:"Boolean to indicate if the display should be in edit mode or not.";}s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:28:"The Feed Entry to work with.";}}s:6:"source";s:411:" if(!editMode){ dojox.atom.widget.FeedEntryEditor.superclass.setUpdated.call(this, updatedAnchorNode, editMode, entry); if(entry.updated && entry.updated !== null){ this.setFieldValidity("updated", true); } }else{ if(entry.updated && entry.updated !== null){ this._editors.updated = this._createEditor(updatedAnchorNode, entry.updated); this.setFieldValidity("updated",true); } }";s:7:"summary";s:95:"Function to set the contents of the updated node in the template to some value from the entry.";s:11:"description";s:190:"Function to set the contents of the updated node in the template to some value from the entry. This exists specifically so users can over-ride how the title data is filled out from an entry.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:55:"dojox.atom.widget.FeedEntryEditor.superclass.setUpdated";}}}s:44:"dojox.atom.widget.FeedEntryEditor.setSummary";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:17:"summaryAnchorNode";a:2:{s:4:"type";s:8:"DOM node";s:7:"summary";s:43:"The DOM node to attach the summary data to.";}s:8:"editMode";a:2:{s:4:"type";s:7:"boolean";s:7:"summary";s:65:"Boolean to indicate if the display should be in edit mode or not.";}s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:28:"The Feed Entry to work with.";}}s:6:"source";s:751:" if(!editMode){ dojox.atom.widget.FeedEntryEditor.superclass.setSummary.call(this, summaryAnchorNode, editMode, entry); if(entry.summary && entry.summary.value && entry.summary.value !== null){ this.setFieldValidity("summary", true); } }else{ if(entry.summary && entry.summary.value && entry.summary.value !== null){ if(!this._toLoad){ this._toLoad = []; } this.entrySummarySelect.value = entry.summary.type; var editor = this._createEditor(summaryAnchorNode, entry.summary, true, entry.summary.type === "html" || entry.summary.type === "xhtml"); editor.name = "summary"; this._toLoad.push(editor); this.setFieldValidity("summaryedit",true); this.setFieldValidity("summary",true); } }";s:7:"summary";s:95:"Function to set the contents of the summary node in the template to some value from the entry.";s:11:"description";s:190:"Function to set the contents of the summary node in the template to some value from the entry. This exists specifically so users can over-ride how the title data is filled out from an entry.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:55:"dojox.atom.widget.FeedEntryEditor.superclass.setSummary";}}}s:44:"dojox.atom.widget.FeedEntryEditor.setContent";a:7:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:17:"contentAnchorNode";a:1:{s:4:"type";s:8:"DOM node";}s:8:"editMode";a:2:{s:4:"type";s:7:"boolean";s:7:"summary";s:65:"Boolean to indicate if the display should be in edit mode or not.";}s:5:"entry";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:28:"The Feed Entry to work with.";}}s:6:"source";s:744:" if(!editMode){ dojox.atom.widget.FeedEntryEditor.superclass.setContent.call(this, contentAnchorNode, editMode, entry); if(entry.content && entry.content.value && entry.content.value !== null){ this.setFieldValidity("content",true); } }else{ if(entry.content && entry.content.value && entry.content.value !== null){ if(!this._toLoad){ this._toLoad = []; } this.entryContentSelect.value = entry.content.type; var editor = this._createEditor(contentAnchorNode, entry.content, true, entry.content.type === "html" || entry.content.type === "xhtml"); editor.name = "content"; this._toLoad.push(editor); this.setFieldValidity("contentedit",true); this.setFieldValidity("content",true); } }";s:7:"summary";s:94:"Function to set the contents of the content node in the template to some value from the entry.";s:11:"description";s:254:"Function to set the contents of the content node in the template to some value from the entry. This exists specifically so users can over-ride how the title data is filled out from an entry. summaryAnchorNode: The DOM node to attach the content data to.";s:6:"chains";a:1:{s:4:"call";a:1:{i:0;s:55:"dojox.atom.widget.FeedEntryEditor.superclass.setContent";}}}s:47:"dojox.atom.widget.FeedEntryEditor._createEditor";a:8:{s:9:"prototype";s:33:"dojox.atom.widget.FeedEntryEditor";s:4:"type";s:8:"Function";s:10:"parameters";a:4:{s:10:"anchorNode";a:2:{s:4:"type";s:8:"DOM node";s:7:"summary";s:44:"The DOM node to attach the editor widget to.";}s:4:"node";a:2:{s:4:"type";s:8:"DOM node";s:7:"summary";s:159:"An object containing the value to be put into the editor. This ranges from an anonymous object with a value parameter to a dojox.atom.io.model.Content object.";}s:9:"multiline";a:2:{s:4:"type";s:7:"boolean";s:7:"summary";s:127:"A boolean indicating whether the content should be multiline (such as a textarea) instead of a single line (such as a textbox).";}s:3:"rte";a:2:{s:4:"type";s:6:"object";s:7:"summary";s:77:"A boolean indicating whether the content should be a rich text editor widget.";}}s:6:"source";s:2872:" var viewNode; var box; if(!node){ if(rte){ // Returns an anonymous object which would then be loaded later, after the containing element // exists on the page. return {anchorNode: anchorNode, entryValue: "", editor: null, generateEditor: function(){ // The only way I found I could get the editor to behave consistently was to // create the content on a span, and allow the content editor to replace it. // This gets around the dynamic/delayed way in which content editors get created. var node = document.createElement("div"); node.innerHTML = this.entryValue; this.anchorNode.appendChild(node); var _editor = new dijit.Editor({}, node); this.editor = _editor; return _editor; } }; } if(multiline){ // If multiline, create a textarea viewNode = document.createElement("textarea"); anchorNode.appendChild(viewNode); dojo.style(viewNode, 'width', '90%'); box = new dijit.form.SimpleTextarea({},viewNode); }else{ // If single line, create a textbox. viewNode = document.createElement("input"); anchorNode.appendChild(viewNode); dojo.style(viewNode, 'width', '95%'); box = new dijit.form.TextBox({},viewNode); } box.attr('value', ''); return box; } // Check through the node parameter to get the value to be used. var value; if(node.value !== undefined){ value = node.value; }else if(node.attr){ value = node.attr('value'); }else{ value = node; } if(rte){ // Returns an anonymous object which would then be loaded later, after the containing element // exists on the page. if(value.indexOf("<") != -1){ value = value.replace(/') !== 0){ value = '