Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F1128460
html.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
3 KB
Subscribers
None
html.js
View Options
if
(
!
dojo
.
_hasResource
[
"dojox.dtl.tag.html"
]){
//_hasResource checks added by build. Do not use _hasResource directly in your code.
dojo
.
_hasResource
[
"dojox.dtl.tag.html"
]
=
true
;
dojo
.
provide
(
"dojox.dtl.tag.html"
);
dojo
.
require
(
"dojox.dtl._base"
);
dojox
.
dtl
.
tag
.
html
.
HtmlNode
=
function
(
name
){
this
.
contents
=
new
dojox
.
dtl
.
Filter
(
name
);
this
.
_div
=
document
.
createElement
(
"div"
);
this
.
_lasts
=
[];
}
dojo
.
extend
(
dojox
.
dtl
.
tag
.
html
.
HtmlNode
,
{
render
:
function
(
context
,
buffer
){
var
text
=
this
.
contents
.
resolve
(
context
);
text
=
text
.
replace
(
/<(\/?script)/ig
,
'<$1'
).
replace
(
/\bon[a-z]+\s*=/ig
,
''
);
if
(
this
.
_rendered
&&
this
.
_last
!=
text
){
buffer
=
this
.
unrender
(
context
,
buffer
);
}
this
.
_last
=
text
;
// This can get reset in the above tag
if
(
!
this
.
_rendered
){
this
.
_rendered
=
true
;
var
div
=
this
.
_div
;
div
.
innerHTML
=
text
;
var
children
=
div
.
childNodes
;
while
(
children
.
length
){
var
removed
=
div
.
removeChild
(
children
[
0
]);
this
.
_lasts
.
push
(
removed
);
buffer
=
buffer
.
concat
(
removed
);
}
}
return
buffer
;
},
unrender
:
function
(
context
,
buffer
){
if
(
this
.
_rendered
){
this
.
_rendered
=
false
;
this
.
_last
=
""
;
for
(
var
i
=
0
,
node
;
node
=
this
.
_lasts
[
i
++
];){
buffer
=
buffer
.
remove
(
node
);
dojo
.
_destroyElement
(
node
);
}
this
.
_lasts
=
[];
}
return
buffer
;
},
clone
:
function
(
buffer
){
return
new
dojox
.
dtl
.
tag
.
html
.
HtmlNode
(
this
.
contents
.
contents
);
},
toString
:
function
(){
return
"dojox.dtl.tag.html.HtmlNode"
;
}
});
dojox
.
dtl
.
tag
.
html
.
StyleNode
=
function
(
styles
){
this
.
contents
=
{};
this
.
_styles
=
styles
;
for
(
var
key
in
styles
){
this
.
contents
[
key
]
=
new
dojox
.
dtl
.
Template
(
styles
[
key
]);
}
}
dojo
.
extend
(
dojox
.
dtl
.
tag
.
html
.
StyleNode
,
{
render
:
function
(
context
,
buffer
){
for
(
var
key
in
this
.
contents
){
dojo
.
style
(
buffer
.
getParent
(),
key
,
this
.
contents
[
key
].
render
(
context
));
}
return
buffer
;
},
unrender
:
function
(
context
,
buffer
){
return
buffer
;
},
clone
:
function
(
buffer
){
return
new
dojox
.
dtl
.
tag
.
html
.
HtmlNode
(
this
.
_styles
);
},
toString
:
function
(){
return
"dojox.dtl.tag.html.StyleNode"
;
}
});
dojox
.
dtl
.
tag
.
html
.
AttachNode
=
function
(
key
){
this
.
contents
=
key
;
}
dojo
.
extend
(
dojox
.
dtl
.
tag
.
html
.
AttachNode
,
{
render
:
function
(
context
,
buffer
){
if
(
!
this
.
_rendered
){
this
.
_rendered
=
true
;
context
.
getThis
()[
this
.
contents
]
=
buffer
.
getParent
();
}
return
buffer
;
},
unrender
:
function
(
context
,
buffer
){
if
(
this
.
_rendered
){
this
.
_rendered
=
false
;
if
(
context
.
getThis
()[
this
.
contents
]
===
buffer
.
getParent
()){
delete
context
.
getThis
()[
this
.
contents
];
}
}
return
buffer
;
},
clone
:
function
(
buffer
){
return
new
dojox
.
dtl
.
tag
.
html
.
HtmlNode
(
this
.
_styles
);
},
toString
:
function
(){
return
"dojox.dtl.tag.html.AttachNode"
;
}
});
dojox
.
dtl
.
tag
.
html
.
html
=
function
(
parser
,
text
){
var
parts
=
text
.
split
(
" "
,
2
);
return
new
dojox
.
dtl
.
tag
.
html
.
HtmlNode
(
parts
[
1
]);
}
dojox
.
dtl
.
tag
.
html
.
tstyle
=
function
(
parser
,
text
){
var
styles
=
{};
text
=
text
.
replace
(
dojox
.
dtl
.
tag
.
html
.
tstyle
.
_re
,
""
);
var
rules
=
text
.
split
(
dojox
.
dtl
.
tag
.
html
.
tstyle
.
_re1
);
for
(
var
i
=
0
,
rule
;
rule
=
rules
[
i
];
i
++
){
var
parts
=
rule
.
split
(
dojox
.
dtl
.
tag
.
html
.
tstyle
.
_re2
);
var
key
=
parts
[
0
];
var
value
=
parts
[
1
];
if
(
value
.
indexOf
(
"{{"
)
==
0
){
styles
[
key
]
=
value
;
}
}
return
new
dojox
.
dtl
.
tag
.
html
.
StyleNode
(
styles
);
}
dojo
.
mixin
(
dojox
.
dtl
.
tag
.
html
.
tstyle
,
{
_re
:
/^tstyle\s+/
,
_re1
:
/\s*;\s*/g
,
_re2
:
/\s*:\s*/g
});
dojox
.
dtl
.
tag
.
html
.
attach
=
function
(
parser
,
text
){
var
parts
=
text
.
split
(
dojox
.
dtl
.
tag
.
html
.
attach
.
_re
);
return
new
dojox
.
dtl
.
tag
.
html
.
AttachNode
(
parts
[
1
]);
}
dojo
.
mixin
(
dojox
.
dtl
.
tag
.
html
.
attach
,
{
_re
:
/\s+/g
})
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Jun 20, 08:19 (2 w, 4 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23723
Default Alt Text
html.js (3 KB)
Attached To
rZEDHG ZedLegacy
Event Timeline
Log In to Comment