Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F886232
FeedEntryEditor.js
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
31 KB
Subscribers
None
FeedEntryEditor.js
View Options
/*
Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved.
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
if
(
!
dojo
.
_hasResource
[
"dojox.atom.widget.FeedEntryEditor"
]){
dojo
.
_hasResource
[
"dojox.atom.widget.FeedEntryEditor"
]
=
true
;
dojo
.
provide
(
"dojox.atom.widget.FeedEntryEditor"
);
dojo
.
require
(
"dojox.atom.widget.FeedEntryViewer"
);
dojo
.
require
(
"dijit._Widget"
);
dojo
.
require
(
"dijit._Templated"
);
dojo
.
require
(
"dijit._Container"
);
dojo
.
require
(
"dijit.Editor"
);
dojo
.
require
(
"dijit.form.TextBox"
);
dojo
.
require
(
"dijit.form.SimpleTextarea"
);
dojo
.
requireLocalization
(
"dojox.atom.widget"
,
"FeedEntryEditor"
,
null
,
"ROOT,ar,ca,cs,da,de,el,es,fi,fr,he,hu,it,ja,ko,nb,nl,pl,pt,pt-pt,ru,sk,sl,sv,th,tr,zh,zh-tw"
);
dojo
.
requireLocalization
(
"dojox.atom.widget"
,
"PeopleEditor"
,
null
,
"ROOT,ar,ca,cs,da,de,el,es,fi,fr,he,hu,it,ja,ko,nb,nl,pl,pt,pt-pt,ru,sk,sl,sv,th,tr,zh,zh-tw"
);
dojo
.
experimental
(
"dojox.atom.widget.FeedEntryEditor"
);
dojo
.
declare
(
"dojox.atom.widget.FeedEntryEditor"
,
dojox
.
atom
.
widget
.
FeedEntryViewer
,{
_contentEditor
:
null
,
_oldContent
:
null
,
_setObject
:
null
,
enableEdit
:
false
,
_contentEditorCreator
:
null
,
_editors
:
{},
entryNewButton
:
null
,
_editable
:
false
,
templateString
:
dojo
.
cache
(
"dojox.atom"
,
"widget/templates/FeedEntryEditor.html"
,
"<div class=\"feedEntryViewer\">\n <table border=\"0\" width=\"100%\" class=\"feedEntryViewerMenuTable\" dojoAttachPoint=\"feedEntryViewerMenu\" style=\"display: none;\">\n <tr width=\"100%\" dojoAttachPoint=\"entryCheckBoxDisplayOptions\">\n \t<td align=\"left\" dojoAttachPoint=\"entryNewButton\">\n <span class=\"feedEntryViewerMenu\" dojoAttachPoint=\"doNew\" dojoAttachEvent=\"onclick:_toggleNew\"></span>\n \t</td>\n <td align=\"left\" dojoAttachPoint=\"entryEditButton\" style=\"display: none;\">\n <span class=\"feedEntryViewerMenu\" dojoAttachPoint=\"edit\" dojoAttachEvent=\"onclick:_toggleEdit\"></span>\n </td>\n <td align=\"left\" dojoAttachPoint=\"entrySaveCancelButtons\" style=\"display: none;\">\n <span class=\"feedEntryViewerMenu\" dojoAttachPoint=\"save\" dojoAttachEvent=\"onclick:saveEdits\"></span>\n <span class=\"feedEntryViewerMenu\" dojoAttachPoint=\"cancel\" dojoAttachEvent=\"onclick:cancelEdits\"></span>\n </td>\n <td align=\"right\">\n <span class=\"feedEntryViewerMenu\" dojoAttachPoint=\"displayOptions\" dojoAttachEvent=\"onclick:_toggleOptions\"></span>\n </td>\n </tr>\n <tr class=\"feedEntryViewerDisplayCheckbox\" dojoAttachPoint=\"entryCheckBoxRow\" width=\"100%\" style=\"display: none;\">\n <td dojoAttachPoint=\"feedEntryCelltitle\">\n <input type=\"checkbox\" name=\"title\" value=\"Title\" dojoAttachPoint=\"feedEntryCheckBoxTitle\" dojoAttachEvent=\"onclick:_toggleCheckbox\"/>\n\t\t\t\t<label for=\"title\" dojoAttachPoint=\"feedEntryCheckBoxLabelTitle\"></label>\n </td>\n <td dojoAttachPoint=\"feedEntryCellauthors\">\n <input type=\"checkbox\" name=\"authors\" value=\"Authors\" dojoAttachPoint=\"feedEntryCheckBoxAuthors\" dojoAttachEvent=\"onclick:_toggleCheckbox\"/>\n\t\t\t\t<label for=\"title\" dojoAttachPoint=\"feedEntryCheckBoxLabelAuthors\"></label>\n </td>\n <td dojoAttachPoint=\"feedEntryCellcontributors\">\n <input type=\"checkbox\" name=\"contributors\" value=\"Contributors\" dojoAttachPoint=\"feedEntryCheckBoxContributors\" dojoAttachEvent=\"onclick:_toggleCheckbox\"/>\n\t\t\t\t<label for=\"title\" dojoAttachPoint=\"feedEntryCheckBoxLabelContributors\"></label>\n </td>\n <td dojoAttachPoint=\"feedEntryCellid\">\n <input type=\"checkbox\" name=\"id\" value=\"Id\" dojoAttachPoint=\"feedEntryCheckBoxId\" dojoAttachEvent=\"onclick:_toggleCheckbox\"/>\n\t\t\t\t<label for=\"title\" dojoAttachPoint=\"feedEntryCheckBoxLabelId\"></label>\n </td>\n <td rowspan=\"2\" align=\"right\">\n <span class=\"feedEntryViewerMenu\" dojoAttachPoint=\"close\" dojoAttachEvent=\"onclick:_toggleOptions\"></span>\n </td>\n\t\t</tr>\n\t\t<tr class=\"feedEntryViewerDisplayCheckbox\" dojoAttachPoint=\"entryCheckBoxRow2\" width=\"100%\" style=\"display: none;\">\n <td dojoAttachPoint=\"feedEntryCellupdated\">\n <input type=\"checkbox\" name=\"updated\" value=\"Updated\" dojoAttachPoint=\"feedEntryCheckBoxUpdated\" dojoAttachEvent=\"onclick:_toggleCheckbox\"/>\n\t\t\t\t<label for=\"title\" dojoAttachPoint=\"feedEntryCheckBoxLabelUpdated\"></label>\n </td>\n <td dojoAttachPoint=\"feedEntryCellsummary\">\n <input type=\"checkbox\" name=\"summary\" value=\"Summary\" dojoAttachPoint=\"feedEntryCheckBoxSummary\" dojoAttachEvent=\"onclick:_toggleCheckbox\"/>\n\t\t\t\t<label for=\"title\" dojoAttachPoint=\"feedEntryCheckBoxLabelSummary\"></label>\n </td>\n <td dojoAttachPoint=\"feedEntryCellcontent\">\n <input type=\"checkbox\" name=\"content\" value=\"Content\" dojoAttachPoint=\"feedEntryCheckBoxContent\" dojoAttachEvent=\"onclick:_toggleCheckbox\"/>\n\t\t\t\t<label for=\"title\" dojoAttachPoint=\"feedEntryCheckBoxLabelContent\"></label>\n </td>\n </tr>\n </table>\n \n <table class=\"feedEntryViewerContainer\" border=\"0\" width=\"100%\">\n <tr class=\"feedEntryViewerTitle\" dojoAttachPoint=\"entryTitleRow\" style=\"display: none;\">\n <td>\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr class=\"graphic-tab-lgray\">\n\t\t\t\t\t\t<td class=\"lp2\">\n\t\t\t\t\t\t\t<span class=\"lp\" dojoAttachPoint=\"entryTitleHeader\"></span>\n\t\t\t\t\t\t</td>\n </tr>\n <tr>\n <td>\n \t<select dojoAttachPoint=\"entryTitleSelect\" dojoAttachEvent=\"onchange:_switchEditor\" style=\"display: none\">\n \t\t<option value=\"text\">Text</option>\n\t\t\t\t\t\t\t\t<option value=\"html\">HTML</option>\n\t\t\t\t\t\t\t\t<option value=\"xhtml\">XHTML</option>\n \t</select>\n </td>\n </tr>\n <tr>\n <td colspan=\"2\" dojoAttachPoint=\"entryTitleNode\">\n </td>\n </tr>\n </table>\n </td>\n </tr>\n\n <tr class=\"feedEntryViewerAuthor\" dojoAttachPoint=\"entryAuthorRow\" style=\"display: none;\">\n <td>\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr class=\"graphic-tab-lgray\">\n\t\t\t\t\t\t<td class=\"lp2\">\n\t\t\t\t\t\t\t<span class=\"lp\" dojoAttachPoint=\"entryAuthorHeader\"></span>\n\t\t\t\t\t\t</td>\n </tr>\n <tr>\n <td dojoAttachPoint=\"entryAuthorNode\">\n </td>\n </tr>\n </table>\n </td>\n </tr>\n\n <tr class=\"feedEntryViewerContributor\" dojoAttachPoint=\"entryContributorRow\" style=\"display: none;\">\n <td>\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr class=\"graphic-tab-lgray\">\n\t\t\t\t\t\t<td class=\"lp2\">\n\t\t\t\t\t\t\t<span class=\"lp\" dojoAttachPoint=\"entryContributorHeader\"></span>\n\t\t\t\t\t\t</td>\n </tr>\n <tr>\n <td dojoAttachPoint=\"entryContributorNode\" class=\"feedEntryViewerContributorNames\">\n </td>\n </tr>\n </table>\n </td>\n </tr>\n \n <tr class=\"feedEntryViewerId\" dojoAttachPoint=\"entryIdRow\" style=\"display: none;\">\n <td>\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr class=\"graphic-tab-lgray\">\n\t\t\t\t\t\t<td class=\"lp2\">\n\t\t\t\t\t\t\t<span class=\"lp\" dojoAttachPoint=\"entryIdHeader\"></span>\n\t\t\t\t\t\t</td>\n </tr>\n <tr>\n <td dojoAttachPoint=\"entryIdNode\" class=\"feedEntryViewerIdText\">\n </td>\n </tr>\n </table>\n </td>\n </tr>\n \n <tr class=\"feedEntryViewerUpdated\" dojoAttachPoint=\"entryUpdatedRow\" style=\"display: none;\">\n <td>\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr class=\"graphic-tab-lgray\">\n\t\t\t\t\t\t<td class=\"lp2\">\n\t\t\t\t\t\t\t<span class=\"lp\" dojoAttachPoint=\"entryUpdatedHeader\"></span>\n\t\t\t\t\t\t</td>\n </tr>\n <tr>\n <td dojoAttachPoint=\"entryUpdatedNode\" class=\"feedEntryViewerUpdatedText\">\n </td>\n </tr>\n </table>\n </td>\n </tr>\n \n <tr class=\"feedEntryViewerSummary\" dojoAttachPoint=\"entrySummaryRow\" style=\"display: none;\">\n <td>\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr class=\"graphic-tab-lgray\">\n\t\t\t\t\t\t<td class=\"lp2\" colspan=\"2\">\n\t\t\t\t\t\t\t<span class=\"lp\" dojoAttachPoint=\"entrySummaryHeader\"></span>\n\t\t\t\t\t\t</td>\n </tr>\n <tr>\n <td>\n \t<select dojoAttachPoint=\"entrySummarySelect\" dojoAttachEvent=\"onchange:_switchEditor\" style=\"display: none\">\n \t\t<option value=\"text\">Text</option>\n\t\t\t\t\t\t\t\t<option value=\"html\">HTML</option>\n\t\t\t\t\t\t\t\t<option value=\"xhtml\">XHTML</option>\n \t</select>\n </td>\n </tr>\n <tr>\n <td dojoAttachPoint=\"entrySummaryNode\">\n </td>\n </tr>\n </table>\n </td>\n </tr>\n \n <tr class=\"feedEntryViewerContent\" dojoAttachPoint=\"entryContentRow\" style=\"display: none;\">\n <td>\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n <tr class=\"graphic-tab-lgray\">\n\t\t\t\t\t\t<td class=\"lp2\">\n\t\t\t\t\t\t\t<span class=\"lp\" dojoAttachPoint=\"entryContentHeader\"></span>\n\t\t\t\t\t\t</td>\n </tr>\n <tr>\n <td>\n \t<select dojoAttachPoint=\"entryContentSelect\" dojoAttachEvent=\"onchange:_switchEditor\" style=\"display: none\">\n \t\t<option value=\"text\">Text</option>\n\t\t\t\t\t\t\t\t<option value=\"html\">HTML</option>\n\t\t\t\t\t\t\t\t<option value=\"xhtml\">XHTML</option>\n \t</select>\n </td>\n </tr>\n <tr>\n <td dojoAttachPoint=\"entryContentNode\">\n </td>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n</div>\n"
),
postCreate
:
function
(){
if
(
this
.
entrySelectionTopic
!==
""
){
this
.
_subscriptions
=
[
dojo
.
subscribe
(
this
.
entrySelectionTopic
,
this
,
"_handleEvent"
)];
}
var
_1
=
dojo
.
i18n
.
getLocalization
(
"dojox.atom.widget"
,
"FeedEntryViewer"
);
this
.
displayOptions
.
innerHTML
=
_1
.
displayOptions
;
this
.
feedEntryCheckBoxLabelTitle
.
innerHTML
=
_1
.
title
;
this
.
feedEntryCheckBoxLabelAuthors
.
innerHTML
=
_1
.
authors
;
this
.
feedEntryCheckBoxLabelContributors
.
innerHTML
=
_1
.
contributors
;
this
.
feedEntryCheckBoxLabelId
.
innerHTML
=
_1
.
id
;
this
.
close
.
innerHTML
=
_1
.
close
;
this
.
feedEntryCheckBoxLabelUpdated
.
innerHTML
=
_1
.
updated
;
this
.
feedEntryCheckBoxLabelSummary
.
innerHTML
=
_1
.
summary
;
this
.
feedEntryCheckBoxLabelContent
.
innerHTML
=
_1
.
content
;
_1
=
dojo
.
i18n
.
getLocalization
(
"dojox.atom.widget"
,
"FeedEntryEditor"
);
this
.
doNew
.
innerHTML
=
_1
.
doNew
;
this
.
edit
.
innerHTML
=
_1
.
edit
;
this
.
save
.
innerHTML
=
_1
.
save
;
this
.
cancel
.
innerHTML
=
_1
.
cancel
;
},
setEntry
:
function
(
_2
,
_3
,
_4
){
if
(
this
.
_entry
!==
_2
){
this
.
_editMode
=
false
;
_4
=
false
;
}
else
{
_4
=
true
;
}
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
setEntry
.
call
(
this
,
_2
,
_3
);
this
.
_editable
=
this
.
_isEditable
(
_2
);
if
(
!
_4
&&!
this
.
_editable
){
dojo
.
style
(
this
.
entryEditButton
,
"display"
,
"none"
);
dojo
.
style
(
this
.
entrySaveCancelButtons
,
"display"
,
"none"
);
}
if
(
this
.
_editable
&&
this
.
enableEdit
){
if
(
!
_4
){
dojo
.
style
(
this
.
entryEditButton
,
"display"
,
""
);
if
(
this
.
enableMenuFade
&&
this
.
entrySaveCancelButton
){
dojo
.
fadeOut
({
node
:
this
.
entrySaveCancelButton
,
duration
:
250
}).
play
();
}
}
}
},
_toggleEdit
:
function
(){
if
(
this
.
_editable
&&
this
.
enableEdit
){
dojo
.
style
(
this
.
entryEditButton
,
"display"
,
"none"
);
dojo
.
style
(
this
.
entrySaveCancelButtons
,
"display"
,
""
);
this
.
_editMode
=
true
;
this
.
setEntry
(
this
.
_entry
,
this
.
_feed
,
true
);
}
},
_handleEvent
:
function
(
_5
){
if
(
_5
.
source
!=
this
&&
_5
.
action
==
"delete"
&&
_5
.
entry
&&
_5
.
entry
==
this
.
_entry
){
dojo
.
style
(
this
.
entryEditButton
,
"display"
,
"none"
);
}
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
_handleEvent
.
call
(
this
,
_5
);
},
_isEditable
:
function
(
_6
){
var
_7
=
false
;
if
(
_6
&&
_6
!==
null
&&
_6
.
links
&&
_6
.
links
!==
null
){
for
(
var
x
in
_6
.
links
){
if
(
_6
.
links
[
x
].
rel
&&
_6
.
links
[
x
].
rel
==
"edit"
){
_7
=
true
;
break
;
}
}
}
return
_7
;
},
setTitle
:
function
(
_8
,
_9
,
_a
){
if
(
!
_9
){
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
setTitle
.
call
(
this
,
_8
,
_9
,
_a
);
if
(
_a
.
title
&&
_a
.
title
.
value
&&
_a
.
title
.
value
!==
null
){
this
.
setFieldValidity
(
"title"
,
true
);
}
}
else
{
if
(
_a
.
title
&&
_a
.
title
.
value
&&
_a
.
title
.
value
!==
null
){
if
(
!
this
.
_toLoad
){
this
.
_toLoad
=
[];
}
this
.
entryTitleSelect
.
value
=
_a
.
title
.
type
;
var
_b
=
this
.
_createEditor
(
_8
,
_a
.
title
,
true
,
_a
.
title
.
type
===
"html"
||
_a
.
title
.
type
===
"xhtml"
);
_b
.
name
=
"title"
;
this
.
_toLoad
.
push
(
_b
);
this
.
setFieldValidity
(
"titleedit"
,
true
);
this
.
setFieldValidity
(
"title"
,
true
);
}
}
},
setAuthors
:
function
(
_c
,
_d
,
_e
){
if
(
!
_d
){
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
setAuthors
.
call
(
this
,
_c
,
_d
,
_e
);
if
(
_e
.
authors
&&
_e
.
authors
.
length
>
0
){
this
.
setFieldValidity
(
"authors"
,
true
);
}
}
else
{
if
(
_e
.
authors
&&
_e
.
authors
.
length
>
0
){
this
.
_editors
.
authors
=
this
.
_createPeopleEditor
(
this
.
entryAuthorNode
,{
data
:
_e
.
authors
,
name
:
"Author"
});
this
.
setFieldValidity
(
"authors"
,
true
);
}
}
},
setContributors
:
function
(
_f
,
_10
,
_11
){
if
(
!
_10
){
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
setContributors
.
call
(
this
,
_f
,
_10
,
_11
);
if
(
_11
.
contributors
&&
_11
.
contributors
.
length
>
0
){
this
.
setFieldValidity
(
"contributors"
,
true
);
}
}
else
{
if
(
_11
.
contributors
&&
_11
.
contributors
.
length
>
0
){
this
.
_editors
.
contributors
=
this
.
_createPeopleEditor
(
this
.
entryContributorNode
,{
data
:
_11
.
contributors
,
name
:
"Contributor"
});
this
.
setFieldValidity
(
"contributors"
,
true
);
}
}
},
setId
:
function
(
_12
,
_13
,
_14
){
if
(
!
_13
){
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
setId
.
call
(
this
,
_12
,
_13
,
_14
);
if
(
_14
.
id
&&
_14
.
id
!==
null
){
this
.
setFieldValidity
(
"id"
,
true
);
}
}
else
{
if
(
_14
.
id
&&
_14
.
id
!==
null
){
this
.
_editors
.
id
=
this
.
_createEditor
(
_12
,
_14
.
id
);
this
.
setFieldValidity
(
"id"
,
true
);
}
}
},
setUpdated
:
function
(
_15
,
_16
,
_17
){
if
(
!
_16
){
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
setUpdated
.
call
(
this
,
_15
,
_16
,
_17
);
if
(
_17
.
updated
&&
_17
.
updated
!==
null
){
this
.
setFieldValidity
(
"updated"
,
true
);
}
}
else
{
if
(
_17
.
updated
&&
_17
.
updated
!==
null
){
this
.
_editors
.
updated
=
this
.
_createEditor
(
_15
,
_17
.
updated
);
this
.
setFieldValidity
(
"updated"
,
true
);
}
}
},
setSummary
:
function
(
_18
,
_19
,
_1a
){
if
(
!
_19
){
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
setSummary
.
call
(
this
,
_18
,
_19
,
_1a
);
if
(
_1a
.
summary
&&
_1a
.
summary
.
value
&&
_1a
.
summary
.
value
!==
null
){
this
.
setFieldValidity
(
"summary"
,
true
);
}
}
else
{
if
(
_1a
.
summary
&&
_1a
.
summary
.
value
&&
_1a
.
summary
.
value
!==
null
){
if
(
!
this
.
_toLoad
){
this
.
_toLoad
=
[];
}
this
.
entrySummarySelect
.
value
=
_1a
.
summary
.
type
;
var
_1b
=
this
.
_createEditor
(
_18
,
_1a
.
summary
,
true
,
_1a
.
summary
.
type
===
"html"
||
_1a
.
summary
.
type
===
"xhtml"
);
_1b
.
name
=
"summary"
;
this
.
_toLoad
.
push
(
_1b
);
this
.
setFieldValidity
(
"summaryedit"
,
true
);
this
.
setFieldValidity
(
"summary"
,
true
);
}
}
},
setContent
:
function
(
_1c
,
_1d
,
_1e
){
if
(
!
_1d
){
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
setContent
.
call
(
this
,
_1c
,
_1d
,
_1e
);
if
(
_1e
.
content
&&
_1e
.
content
.
value
&&
_1e
.
content
.
value
!==
null
){
this
.
setFieldValidity
(
"content"
,
true
);
}
}
else
{
if
(
_1e
.
content
&&
_1e
.
content
.
value
&&
_1e
.
content
.
value
!==
null
){
if
(
!
this
.
_toLoad
){
this
.
_toLoad
=
[];
}
this
.
entryContentSelect
.
value
=
_1e
.
content
.
type
;
var
_1f
=
this
.
_createEditor
(
_1c
,
_1e
.
content
,
true
,
_1e
.
content
.
type
===
"html"
||
_1e
.
content
.
type
===
"xhtml"
);
_1f
.
name
=
"content"
;
this
.
_toLoad
.
push
(
_1f
);
this
.
setFieldValidity
(
"contentedit"
,
true
);
this
.
setFieldValidity
(
"content"
,
true
);
}
}
},
_createEditor
:
function
(
_20
,
_21
,
_22
,
rte
){
var
_23
;
var
box
;
if
(
!
_21
){
if
(
rte
){
return
{
anchorNode
:
_20
,
entryValue
:
""
,
editor
:
null
,
generateEditor
:
function
(){
var
_24
=
document
.
createElement
(
"div"
);
_24
.
innerHTML
=
this
.
entryValue
;
this
.
anchorNode
.
appendChild
(
_24
);
var
_25
=
new
dijit
.
Editor
({},
_24
);
this
.
editor
=
_25
;
return
_25
;
}};
}
if
(
_22
){
_23
=
document
.
createElement
(
"textarea"
);
_20
.
appendChild
(
_23
);
dojo
.
style
(
_23
,
"width"
,
"90%"
);
box
=
new
dijit
.
form
.
SimpleTextarea
({},
_23
);
}
else
{
_23
=
document
.
createElement
(
"input"
);
_20
.
appendChild
(
_23
);
dojo
.
style
(
_23
,
"width"
,
"95%"
);
box
=
new
dijit
.
form
.
TextBox
({},
_23
);
}
box
.
attr
(
"value"
,
""
);
return
box
;
}
var
_26
;
if
(
_21
.
value
!==
undefined
){
_26
=
_21
.
value
;
}
else
{
if
(
_21
.
attr
){
_26
=
_21
.
attr
(
"value"
);
}
else
{
_26
=
_21
;
}
}
if
(
rte
){
if
(
_26
.
indexOf
(
"<"
)
!=-
1
){
_26
=
_26
.
replace
(
/</g
,
"<"
);
}
return
{
anchorNode
:
_20
,
entryValue
:
_26
,
editor
:
null
,
generateEditor
:
function
(){
var
_27
=
document
.
createElement
(
"div"
);
_27
.
innerHTML
=
this
.
entryValue
;
this
.
anchorNode
.
appendChild
(
_27
);
var
_28
=
new
dijit
.
Editor
({},
_27
);
this
.
editor
=
_28
;
return
_28
;
}};
}
if
(
_22
){
_23
=
document
.
createElement
(
"textarea"
);
_20
.
appendChild
(
_23
);
dojo
.
style
(
_23
,
"width"
,
"90%"
);
box
=
new
dijit
.
form
.
SimpleTextarea
({},
_23
);
}
else
{
_23
=
document
.
createElement
(
"input"
);
_20
.
appendChild
(
_23
);
dojo
.
style
(
_23
,
"width"
,
"95%"
);
box
=
new
dijit
.
form
.
TextBox
({},
_23
);
}
box
.
attr
(
"value"
,
_26
);
return
box
;
},
_switchEditor
:
function
(
_29
){
var
_2a
=
null
;
var
_2b
=
null
;
var
_2c
=
null
;
if
(
dojo
.
isIE
){
_2b
=
_29
.
srcElement
;
}
else
{
_2b
=
_29
.
target
;
}
if
(
_2b
===
this
.
entryTitleSelect
){
_2c
=
this
.
entryTitleNode
;
_2a
=
"title"
;
}
else
{
if
(
_2b
===
this
.
entrySummarySelect
){
_2c
=
this
.
entrySummaryNode
;
_2a
=
"summary"
;
}
else
{
_2c
=
this
.
entryContentNode
;
_2a
=
"content"
;
}
}
var
_2d
=
this
.
_editors
[
_2a
];
var
_2e
;
var
_2f
;
if
(
_2b
.
value
===
"text"
){
if
(
_2d
.
declaredClass
===
"dijit.Editor"
){
_2f
=
_2d
.
attr
(
"value"
,
false
);
_2d
.
close
(
false
,
true
);
_2d
.
destroy
();
while
(
_2c
.
firstChild
){
dojo
.
destroy
(
_2c
.
firstChild
);
}
_2e
=
this
.
_createEditor
(
_2c
,{
value
:
_2f
},
true
,
false
);
this
.
_editors
[
_2a
]
=
_2e
;
}
}
else
{
if
(
_2d
.
declaredClass
!=
"dijit.Editor"
){
_2f
=
_2d
.
attr
(
"value"
);
_2d
.
destroy
();
while
(
_2c
.
firstChild
){
dojo
.
destroy
(
_2c
.
firstChild
);
}
_2e
=
this
.
_createEditor
(
_2c
,{
value
:
_2f
},
true
,
true
);
_2e
=
dojo
.
hitch
(
_2e
,
_2e
.
generateEditor
)();
this
.
_editors
[
_2a
]
=
_2e
;
}
}
},
_createPeopleEditor
:
function
(
_30
,
_31
){
var
_32
=
document
.
createElement
(
"div"
);
_30
.
appendChild
(
_32
);
return
new
dojox
.
atom
.
widget
.
PeopleEditor
(
_31
,
_32
);
},
saveEdits
:
function
(){
dojo
.
style
(
this
.
entrySaveCancelButtons
,
"display"
,
"none"
);
dojo
.
style
(
this
.
entryEditButton
,
"display"
,
""
);
dojo
.
style
(
this
.
entryNewButton
,
"display"
,
""
);
var
_33
=
false
;
var
_34
;
var
i
;
var
_35
;
var
_36
;
var
_37
;
var
_38
;
if
(
!
this
.
_new
){
_36
=
this
.
getEntry
();
if
(
this
.
_editors
.
title
&&
(
this
.
_editors
.
title
.
attr
(
"value"
)
!=
_36
.
title
.
value
||
this
.
entryTitleSelect
.
value
!=
_36
.
title
.
type
)){
_34
=
this
.
_editors
.
title
.
attr
(
"value"
);
if
(
this
.
entryTitleSelect
.
value
===
"xhtml"
){
_34
=
this
.
_enforceXhtml
(
_34
);
if
(
_34
.
indexOf
(
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
)
!==
0
){
_34
=
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
+
_34
+
"</div>"
;
}
}
_36
.
title
=
new
dojox
.
atom
.
io
.
model
.
Content
(
"title"
,
_34
,
null
,
this
.
entryTitleSelect
.
value
);
_33
=
true
;
}
if
(
this
.
_editors
.
id
.
attr
(
"value"
)
!=
_36
.
id
){
_36
.
id
=
this
.
_editors
.
id
.
attr
(
"value"
);
_33
=
true
;
}
if
(
this
.
_editors
.
summary
&&
(
this
.
_editors
.
summary
.
attr
(
"value"
)
!=
_36
.
summary
.
value
||
this
.
entrySummarySelect
.
value
!=
_36
.
summary
.
type
)){
_34
=
this
.
_editors
.
summary
.
attr
(
"value"
);
if
(
this
.
entrySummarySelect
.
value
===
"xhtml"
){
_34
=
this
.
_enforceXhtml
(
_34
);
if
(
_34
.
indexOf
(
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
)
!==
0
){
_34
=
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
+
_34
+
"</div>"
;
}
}
_36
.
summary
=
new
dojox
.
atom
.
io
.
model
.
Content
(
"summary"
,
_34
,
null
,
this
.
entrySummarySelect
.
value
);
_33
=
true
;
}
if
(
this
.
_editors
.
content
&&
(
this
.
_editors
.
content
.
attr
(
"value"
)
!=
_36
.
content
.
value
||
this
.
entryContentSelect
.
value
!=
_36
.
content
.
type
)){
_34
=
this
.
_editors
.
content
.
attr
(
"value"
);
if
(
this
.
entryContentSelect
.
value
===
"xhtml"
){
_34
=
this
.
_enforceXhtml
(
_34
);
if
(
_34
.
indexOf
(
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
)
!==
0
){
_34
=
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
+
_34
+
"</div>"
;
}
}
_36
.
content
=
new
dojox
.
atom
.
io
.
model
.
Content
(
"content"
,
_34
,
null
,
this
.
entryContentSelect
.
value
);
_33
=
true
;
}
if
(
this
.
_editors
.
authors
){
if
(
_33
){
_36
.
authors
=
[];
_37
=
this
.
_editors
.
authors
.
getValues
();
for
(
i
in
_37
){
if
(
_37
[
i
].
name
||
_37
[
i
].
email
||
_37
[
i
].
uri
){
_36
.
addAuthor
(
_37
[
i
].
name
,
_37
[
i
].
email
,
_37
[
i
].
uri
);
}
}
}
else
{
var
_39
=
_36
.
authors
;
var
_3a
=
function
(
_3b
,
_3c
,
uri
){
for
(
i
in
_39
){
if
(
_39
[
i
].
name
===
_3b
&&
_39
[
i
].
email
===
_3c
&&
_39
[
i
].
uri
===
uri
){
return
true
;
}
}
return
false
;
};
_37
=
this
.
_editors
.
authors
.
getValues
();
_35
=
false
;
for
(
i
in
_37
){
if
(
!
_3a
(
_37
[
i
].
name
,
_37
[
i
].
email
,
_37
[
i
].
uri
)){
_35
=
true
;
break
;
}
}
if
(
_35
){
_36
.
authors
=
[];
for
(
i
in
_37
){
if
(
_37
[
i
].
name
||
_37
[
i
].
email
||
_37
[
i
].
uri
){
_36
.
addAuthor
(
_37
[
i
].
name
,
_37
[
i
].
email
,
_37
[
i
].
uri
);
}
}
_33
=
true
;
}
}
}
if
(
this
.
_editors
.
contributors
){
if
(
_33
){
_36
.
contributors
=
[];
_38
=
this
.
_editors
.
contributors
.
getValues
();
for
(
i
in
_38
){
if
(
_38
[
i
].
name
||
_38
[
i
].
email
||
_38
[
i
].
uri
){
_36
.
addAuthor
(
_38
[
i
].
name
,
_38
[
i
].
email
,
_38
[
i
].
uri
);
}
}
}
else
{
var
_3d
=
_36
.
contributors
;
var
_3e
=
function
(
_3f
,
_40
,
uri
){
for
(
i
in
_3d
){
if
(
_3d
[
i
].
name
===
_3f
&&
_3d
[
i
].
email
===
_40
&&
_3d
[
i
].
uri
===
uri
){
return
true
;
}
}
return
false
;
};
_38
=
this
.
_editors
.
contributors
.
getValues
();
_35
=
false
;
for
(
i
in
_38
){
if
(
_3e
(
_38
[
i
].
name
,
_38
[
i
].
email
,
_38
[
i
].
uri
)){
_35
=
true
;
break
;
}
}
if
(
_35
){
_36
.
contributors
=
[];
for
(
i
in
_38
){
if
(
_38
[
i
].
name
||
_38
[
i
].
email
||
_38
[
i
].
uri
){
_36
.
addContributor
(
_38
[
i
].
name
,
_38
[
i
].
email
,
_38
[
i
].
uri
);
}
}
_33
=
true
;
}
}
}
if
(
_33
){
dojo
.
publish
(
this
.
entrySelectionTopic
,[{
action
:
"update"
,
source
:
this
,
entry
:
_36
,
callback
:
this
.
_handleSave
}]);
}
}
else
{
this
.
_new
=
false
;
_36
=
new
dojox
.
atom
.
io
.
model
.
Entry
();
_34
=
this
.
_editors
.
title
.
attr
(
"value"
);
if
(
this
.
entryTitleSelect
.
value
===
"xhtml"
){
_34
=
this
.
_enforceXhtml
(
_34
);
_34
=
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
+
_34
+
"</div>"
;
}
_36
.
setTitle
(
_34
,
this
.
entryTitleSelect
.
value
);
_36
.
id
=
this
.
_editors
.
id
.
attr
(
"value"
);
_37
=
this
.
_editors
.
authors
.
getValues
();
for
(
i
in
_37
){
if
(
_37
[
i
].
name
||
_37
[
i
].
email
||
_37
[
i
].
uri
){
_36
.
addAuthor
(
_37
[
i
].
name
,
_37
[
i
].
email
,
_37
[
i
].
uri
);
}
}
_38
=
this
.
_editors
.
contributors
.
getValues
();
for
(
i
in
_38
){
if
(
_38
[
i
].
name
||
_38
[
i
].
email
||
_38
[
i
].
uri
){
_36
.
addContributor
(
_38
[
i
].
name
,
_38
[
i
].
email
,
_38
[
i
].
uri
);
}
}
_34
=
this
.
_editors
.
summary
.
attr
(
"value"
);
if
(
this
.
entrySummarySelect
.
value
===
"xhtml"
){
_34
=
this
.
_enforceXhtml
(
_34
);
_34
=
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
+
_34
+
"</div>"
;
}
_36
.
summary
=
new
dojox
.
atom
.
io
.
model
.
Content
(
"summary"
,
_34
,
null
,
this
.
entrySummarySelect
.
value
);
_34
=
this
.
_editors
.
content
.
attr
(
"value"
);
if
(
this
.
entryContentSelect
.
value
===
"xhtml"
){
_34
=
this
.
_enforceXhtml
(
_34
);
_34
=
"<div xmlns=\"http://www.w3.org/1999/xhtml\">"
+
_34
+
"</div>"
;
}
_36
.
content
=
new
dojox
.
atom
.
io
.
model
.
Content
(
"content"
,
_34
,
null
,
this
.
entryContentSelect
.
value
);
dojo
.
style
(
this
.
entryNewButton
,
"display"
,
""
);
dojo
.
publish
(
this
.
entrySelectionTopic
,[{
action
:
"post"
,
source
:
this
,
entry
:
_36
}]);
}
this
.
_editMode
=
false
;
this
.
setEntry
(
_36
,
this
.
_feed
,
true
);
},
_handleSave
:
function
(
_41
,
_42
){
this
.
_editMode
=
false
;
this
.
clear
();
this
.
setEntry
(
_41
,
this
.
getFeed
(),
true
);
},
cancelEdits
:
function
(){
this
.
_new
=
false
;
dojo
.
style
(
this
.
entrySaveCancelButtons
,
"display"
,
"none"
);
if
(
this
.
_editable
){
dojo
.
style
(
this
.
entryEditButton
,
"display"
,
""
);
}
dojo
.
style
(
this
.
entryNewButton
,
"display"
,
""
);
this
.
_editMode
=
false
;
this
.
clearEditors
();
this
.
setEntry
(
this
.
getEntry
(),
this
.
getFeed
(),
true
);
},
clear
:
function
(){
this
.
_editable
=
false
;
this
.
clearEditors
();
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
clear
.
apply
(
this
);
if
(
this
.
_contentEditor
){
this
.
_contentEditor
=
this
.
_setObject
=
this
.
_oldContent
=
this
.
_contentEditorCreator
=
null
;
this
.
_editors
=
{};
}
},
clearEditors
:
function
(){
for
(
var
key
in
this
.
_editors
){
if
(
this
.
_editors
[
key
].
declaredClass
===
"dijit.Editor"
){
this
.
_editors
[
key
].
close
(
false
,
true
);
}
this
.
_editors
[
key
].
destroy
();
}
this
.
_editors
=
{};
},
_enforceXhtml
:
function
(
_43
){
var
_44
=
null
;
if
(
_43
){
var
_45
=
/<br>/g
;
_44
=
_43
.
replace
(
_45
,
"<br/>"
);
_44
=
this
.
_closeTag
(
_44
,
"hr"
);
_44
=
this
.
_closeTag
(
_44
,
"img"
);
}
return
_44
;
},
_closeTag
:
function
(
_46
,
tag
){
var
_47
=
"<"
+
tag
;
var
_48
=
_46
.
indexOf
(
_47
);
if
(
_48
!==-
1
){
while
(
_48
!==-
1
){
var
_49
=
""
;
var
_4a
=
false
;
for
(
var
i
=
0
;
i
<
_46
.
length
;
i
++
){
var
c
=
_46
.
charAt
(
i
);
if
(
i
<=
_48
||
_4a
){
_49
+=
c
;
}
else
{
if
(
c
===
">"
){
_49
+=
"/"
;
_4a
=
true
;
}
_49
+=
c
;
}
}
_46
=
_49
;
_48
=
_46
.
indexOf
(
_47
,
_48
+
1
);
}
}
return
_46
;
},
_toggleNew
:
function
(){
dojo
.
style
(
this
.
entryNewButton
,
"display"
,
"none"
);
dojo
.
style
(
this
.
entryEditButton
,
"display"
,
"none"
);
dojo
.
style
(
this
.
entrySaveCancelButtons
,
"display"
,
""
);
this
.
entrySummarySelect
.
value
=
"text"
;
this
.
entryContentSelect
.
value
=
"text"
;
this
.
entryTitleSelect
.
value
=
"text"
;
this
.
clearNodes
();
this
.
_new
=
true
;
var
_4b
=
dojo
.
i18n
.
getLocalization
(
"dojox.atom.widget"
,
"FeedEntryViewer"
);
var
_4c
=
new
dojox
.
atom
.
widget
.
EntryHeader
({
title
:
_4b
.
title
});
this
.
entryTitleHeader
.
appendChild
(
_4c
.
domNode
);
this
.
_editors
.
title
=
this
.
_createEditor
(
this
.
entryTitleNode
,
null
);
this
.
setFieldValidity
(
"title"
,
true
);
var
_4d
=
new
dojox
.
atom
.
widget
.
EntryHeader
({
title
:
_4b
.
authors
});
this
.
entryAuthorHeader
.
appendChild
(
_4d
.
domNode
);
this
.
_editors
.
authors
=
this
.
_createPeopleEditor
(
this
.
entryAuthorNode
,{
name
:
"Author"
});
this
.
setFieldValidity
(
"authors"
,
true
);
var
_4e
=
new
dojox
.
atom
.
widget
.
EntryHeader
({
title
:
_4b
.
contributors
});
this
.
entryContributorHeader
.
appendChild
(
_4e
.
domNode
);
this
.
_editors
.
contributors
=
this
.
_createPeopleEditor
(
this
.
entryContributorNode
,{
name
:
"Contributor"
});
this
.
setFieldValidity
(
"contributors"
,
true
);
var
_4f
=
new
dojox
.
atom
.
widget
.
EntryHeader
({
title
:
_4b
.
id
});
this
.
entryIdHeader
.
appendChild
(
_4f
.
domNode
);
this
.
_editors
.
id
=
this
.
_createEditor
(
this
.
entryIdNode
,
null
);
this
.
setFieldValidity
(
"id"
,
true
);
var
_50
=
new
dojox
.
atom
.
widget
.
EntryHeader
({
title
:
_4b
.
updated
});
this
.
entryUpdatedHeader
.
appendChild
(
_50
.
domNode
);
this
.
_editors
.
updated
=
this
.
_createEditor
(
this
.
entryUpdatedNode
,
null
);
this
.
setFieldValidity
(
"updated"
,
true
);
var
_51
=
new
dojox
.
atom
.
widget
.
EntryHeader
({
title
:
_4b
.
summary
});
this
.
entrySummaryHeader
.
appendChild
(
_51
.
domNode
);
this
.
_editors
.
summary
=
this
.
_createEditor
(
this
.
entrySummaryNode
,
null
,
true
);
this
.
setFieldValidity
(
"summaryedit"
,
true
);
this
.
setFieldValidity
(
"summary"
,
true
);
var
_52
=
new
dojox
.
atom
.
widget
.
EntryHeader
({
title
:
_4b
.
content
});
this
.
entryContentHeader
.
appendChild
(
_52
.
domNode
);
this
.
_editors
.
content
=
this
.
_createEditor
(
this
.
entryContentNode
,
null
,
true
);
this
.
setFieldValidity
(
"contentedit"
,
true
);
this
.
setFieldValidity
(
"content"
,
true
);
this
.
_displaySections
();
},
_displaySections
:
function
(){
dojo
.
style
(
this
.
entrySummarySelect
,
"display"
,
"none"
);
dojo
.
style
(
this
.
entryContentSelect
,
"display"
,
"none"
);
dojo
.
style
(
this
.
entryTitleSelect
,
"display"
,
"none"
);
if
(
this
.
isFieldValid
(
"contentedit"
)){
dojo
.
style
(
this
.
entryContentSelect
,
"display"
,
""
);
}
if
(
this
.
isFieldValid
(
"summaryedit"
)){
dojo
.
style
(
this
.
entrySummarySelect
,
"display"
,
""
);
}
if
(
this
.
isFieldValid
(
"titleedit"
)){
dojo
.
style
(
this
.
entryTitleSelect
,
"display"
,
""
);
}
dojox
.
atom
.
widget
.
FeedEntryEditor
.
superclass
.
_displaySections
.
apply
(
this
);
if
(
this
.
_toLoad
){
for
(
var
i
in
this
.
_toLoad
){
var
_53
;
if
(
this
.
_toLoad
[
i
].
generateEditor
){
_53
=
dojo
.
hitch
(
this
.
_toLoad
[
i
],
this
.
_toLoad
[
i
].
generateEditor
)();
}
else
{
_53
=
this
.
_toLoad
[
i
];
}
this
.
_editors
[
this
.
_toLoad
[
i
].
name
]
=
_53
;
this
.
_toLoad
[
i
]
=
null
;
}
this
.
_toLoad
=
null
;
}
}});
dojo
.
declare
(
"dojox.atom.widget.PeopleEditor"
,[
dijit
.
_Widget
,
dijit
.
_Templated
,
dijit
.
_Container
],{
templateString
:
dojo
.
cache
(
"dojox.atom"
,
"widget/templates/PeopleEditor.html"
,
"<div class=\"peopleEditor\">\n\t<table style=\"width: 100%\">\n\t\t<tbody dojoAttachPoint=\"peopleEditorEditors\"></tbody>\n\t</table>\n\t<span class=\"peopleEditorButton\" dojoAttachPoint=\"peopleEditorButton\" dojoAttachEvent=\"onclick:_add\"></span>\n</div>\n"
),
_rows
:
[],
_editors
:
[],
_index
:
0
,
_numRows
:
0
,
postCreate
:
function
(){
var
_54
=
dojo
.
i18n
.
getLocalization
(
"dojox.atom.widget"
,
"PeopleEditor"
);
if
(
this
.
name
){
if
(
this
.
name
==
"Author"
){
this
.
peopleEditorButton
.
appendChild
(
document
.
createTextNode
(
"["
+
_54
.
addAuthor
+
"]"
));
}
else
{
if
(
this
.
name
==
"Contributor"
){
this
.
peopleEditorButton
.
appendChild
(
document
.
createTextNode
(
"["
+
_54
.
addContributor
+
"]"
));
}
}
}
else
{
this
.
peopleEditorButton
.
appendChild
(
document
.
createTextNode
(
"["
+
_54
.
add
+
"]"
));
}
this
.
_editors
=
[];
if
(
!
this
.
data
||
this
.
data
.
length
===
0
){
this
.
_createEditors
(
null
,
null
,
null
,
0
,
this
.
name
);
this
.
_index
=
1
;
}
else
{
for
(
var
i
in
this
.
data
){
this
.
_createEditors
(
this
.
data
[
i
].
name
,
this
.
data
[
i
].
email
,
this
.
data
[
i
].
uri
,
i
);
this
.
_index
++
;
this
.
_numRows
++
;
}
}
},
destroy
:
function
(){
for
(
var
key
in
this
.
_editors
){
for
(
var
_55
in
this
.
_editors
[
key
]){
this
.
_editors
[
key
][
_55
].
destroy
();
}
}
this
.
_editors
=
[];
},
_createEditors
:
function
(
_56
,
_57
,
uri
,
_58
,
_59
){
var
row
=
document
.
createElement
(
"tr"
);
this
.
peopleEditorEditors
.
appendChild
(
row
);
row
.
id
=
"removeRow"
+
_58
;
var
_5a
=
document
.
createElement
(
"td"
);
_5a
.
setAttribute
(
"align"
,
"right"
);
row
.
appendChild
(
_5a
);
_5a
.
colSpan
=
2
;
if
(
this
.
_numRows
>
0
){
var
hr
=
document
.
createElement
(
"hr"
);
_5a
.
appendChild
(
hr
);
hr
.
id
=
"hr"
+
_58
;
}
row
=
document
.
createElement
(
"span"
);
_5a
.
appendChild
(
row
);
row
.
className
=
"peopleEditorButton"
;
dojo
.
style
(
row
,
"font-size"
,
"x-small"
);
dojo
.
connect
(
row
,
"onclick"
,
this
,
"_removeEditor"
);
row
.
id
=
"remove"
+
_58
;
_5a
=
document
.
createTextNode
(
"[X]"
);
row
.
appendChild
(
_5a
);
row
=
document
.
createElement
(
"tr"
);
this
.
peopleEditorEditors
.
appendChild
(
row
);
row
.
id
=
"editorsRow"
+
_58
;
var
_5b
=
document
.
createElement
(
"td"
);
row
.
appendChild
(
_5b
);
dojo
.
style
(
_5b
,
"width"
,
"20%"
);
_5a
=
document
.
createElement
(
"td"
);
row
.
appendChild
(
_5a
);
row
=
document
.
createElement
(
"table"
);
_5b
.
appendChild
(
row
);
dojo
.
style
(
row
,
"width"
,
"100%"
);
_5b
=
document
.
createElement
(
"tbody"
);
row
.
appendChild
(
_5b
);
row
=
document
.
createElement
(
"table"
);
_5a
.
appendChild
(
row
);
dojo
.
style
(
row
,
"width"
,
"100%"
);
_5a
=
document
.
createElement
(
"tbody"
);
row
.
appendChild
(
_5a
);
this
.
_editors
[
_58
]
=
[];
this
.
_editors
[
_58
].
push
(
this
.
_createEditor
(
_56
,
_59
+
"name"
+
_58
,
"Name:"
,
_5b
,
_5a
));
this
.
_editors
[
_58
].
push
(
this
.
_createEditor
(
_57
,
_59
+
"email"
+
_58
,
"Email:"
,
_5b
,
_5a
));
this
.
_editors
[
_58
].
push
(
this
.
_createEditor
(
uri
,
_59
+
"uri"
+
_58
,
"URI:"
,
_5b
,
_5a
));
},
_createEditor
:
function
(
_5c
,
id
,
_5d
,
_5e
,
_5f
){
var
row
=
document
.
createElement
(
"tr"
);
_5e
.
appendChild
(
row
);
var
_60
=
document
.
createElement
(
"label"
);
_60
.
setAttribute
(
"for"
,
id
);
_60
.
appendChild
(
document
.
createTextNode
(
_5d
));
_5e
=
document
.
createElement
(
"td"
);
_5e
.
appendChild
(
_60
);
row
.
appendChild
(
_5e
);
row
=
document
.
createElement
(
"tr"
);
_5f
.
appendChild
(
row
);
_5f
=
document
.
createElement
(
"td"
);
row
.
appendChild
(
_5f
);
var
_61
=
document
.
createElement
(
"input"
);
_61
.
setAttribute
(
"id"
,
id
);
_5f
.
appendChild
(
_61
);
dojo
.
style
(
_61
,
"width"
,
"95%"
);
var
box
=
new
dijit
.
form
.
TextBox
({},
_61
);
box
.
attr
(
"value"
,
_5c
);
return
box
;
},
_removeEditor
:
function
(
_62
){
var
_63
=
null
;
if
(
dojo
.
isIE
){
_63
=
_62
.
srcElement
;
}
else
{
_63
=
_62
.
target
;
}
var
id
=
_63
.
id
;
id
=
id
.
substring
(
6
);
for
(
var
key
in
this
.
_editors
[
id
]){
this
.
_editors
[
id
][
key
].
destroy
();
}
var
_64
=
dojo
.
byId
(
"editorsRow"
+
id
);
var
_65
=
_64
.
parentNode
;
_65
.
removeChild
(
_64
);
_64
=
dojo
.
byId
(
"removeRow"
+
id
);
_65
=
_64
.
parentNode
;
_65
.
removeChild
(
_64
);
this
.
_numRows
--
;
if
(
this
.
_numRows
===
1
&&
_65
.
firstChild
.
firstChild
.
firstChild
.
tagName
.
toLowerCase
()
===
"hr"
){
_64
=
_65
.
firstChild
.
firstChild
;
_64
.
removeChild
(
_64
.
firstChild
);
}
this
.
_editors
[
id
]
=
null
;
},
_add
:
function
(){
this
.
_createEditors
(
null
,
null
,
null
,
this
.
_index
);
this
.
_index
++
;
this
.
_numRows
++
;
},
getValues
:
function
(){
var
_66
=
[];
for
(
var
i
in
this
.
_editors
){
if
(
this
.
_editors
[
i
]){
_66
.
push
({
name
:
this
.
_editors
[
i
][
0
].
attr
(
"value"
),
email
:
this
.
_editors
[
i
][
1
].
attr
(
"value"
),
uri
:
this
.
_editors
[
i
][
2
].
attr
(
"value"
)});
}
}
return
_66
;
}});
}
File Metadata
Details
Attached
Mime Type
text/html
Expires
Sun, Apr 6, 23:50 (2 w, 2 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25032
Default Alt Text
FeedEntryEditor.js (31 KB)
Attached To
rZEDHG ZedLegacy
Event Timeline
Log In to Comment