<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
{font-family:SimSun;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:SimSun;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
{font-family:"\@SimSun";
panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p
{mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
{mso-style-priority:99;
mso-style-link:"Balloon Text Char";
margin:0cm;
margin-bottom:.0001pt;
font-size:8.0pt;
font-family:"Tahoma","sans-serif";}
span.BalloonTextChar
{mso-style-name:"Balloon Text Char";
mso-style-priority:99;
mso-style-link:"Balloon Text";
font-family:"Tahoma","sans-serif";}
p.ecxmsonormal, li.ecxmsonormal, div.ecxmsonormal
{mso-style-name:ecxmsonormal;
mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ecxmsoacetate, li.ecxmsoacetate, div.ecxmsoacetate
{mso-style-name:ecxmsoacetate;
mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ecxmsochpdefault, li.ecxmsochpdefault, div.ecxmsochpdefault
{mso-style-name:ecxmsochpdefault;
mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ecxmsonormal1, li.ecxmsonormal1, div.ecxmsonormal1
{mso-style-name:ecxmsonormal1;
mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:11.0pt;
font-family:"Calibri","sans-serif";}
p.ecxmsoacetate1, li.ecxmsoacetate1, div.ecxmsoacetate1
{mso-style-name:ecxmsoacetate1;
mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:8.0pt;
font-family:"Tahoma","sans-serif";}
p.ecxmsochpdefault1, li.ecxmsochpdefault1, div.ecxmsochpdefault1
{mso-style-name:ecxmsochpdefault1;
mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:10.0pt;
font-family:"Times New Roman","serif";}
span.ecxmsohyperlink
{mso-style-name:ecxmsohyperlink;}
span.ecxmsohyperlinkfollowed
{mso-style-name:ecxmsohyperlinkfollowed;}
span.ecxballoontextchar
{mso-style-name:ecxballoontextchar;}
span.ecxemailstyle19
{mso-style-name:ecxemailstyle19;}
span.ecxemailstyle20
{mso-style-name:ecxemailstyle20;}
span.ecxemailstyle21
{mso-style-name:ecxemailstyle21;}
span.ecxemailstyle22
{mso-style-name:ecxemailstyle22;}
span.ecxemailstyle23
{mso-style-name:ecxemailstyle23;}
span.ecxemailstyle24
{mso-style-name:ecxemailstyle24;}
span.ecxemailstyle25
{mso-style-name:ecxemailstyle25;}
span.ecxemailstyle26
{mso-style-name:ecxemailstyle26;}
span.ecxemailstyle27
{mso-style-name:ecxemailstyle27;}
span.ecxemailstyle28
{mso-style-name:ecxemailstyle28;}
span.ecxemailstyle29
{mso-style-name:ecxemailstyle29;}
span.ecxmsohyperlink1
{mso-style-name:ecxmsohyperlink1;
color:blue;
text-decoration:underline;}
span.ecxmsohyperlinkfollowed1
{mso-style-name:ecxmsohyperlinkfollowed1;
color:purple;
text-decoration:underline;}
span.ecxballoontextchar1
{mso-style-name:ecxballoontextchar1;
font-family:"Tahoma","sans-serif";}
span.ecxemailstyle191
{mso-style-name:ecxemailstyle191;
font-family:"Calibri","sans-serif";
color:windowtext;}
span.ecxemailstyle201
{mso-style-name:ecxemailstyle201;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle211
{mso-style-name:ecxemailstyle211;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle221
{mso-style-name:ecxemailstyle221;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle231
{mso-style-name:ecxemailstyle231;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle241
{mso-style-name:ecxemailstyle241;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle251
{mso-style-name:ecxemailstyle251;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle261
{mso-style-name:ecxemailstyle261;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle271
{mso-style-name:ecxemailstyle271;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle281
{mso-style-name:ecxemailstyle281;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.ecxemailstyle291
{mso-style-name:ecxemailstyle291;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.EmailStyle54
{mso-style-type:personal;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.EmailStyle55
{mso-style-type:personal;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.EmailStyle56
{mso-style-type:personal;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.EmailStyle57
{mso-style-type:personal-reply;
font-family:"Calibri","sans-serif";
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-GB link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-family:"Courier New"'>var tmpFunc = new Function(codeToRun);<br>tmpFunc();<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-family:"Calibri","sans-serif"'>I never knew that.</span><o:p></o:p></p><p class=MsoNormal><span style='font-family:"Calibri","sans-serif"'>You still execute whatever code you get in though.</span><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:36.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> xerte-dev-bounces@lists.nottingham.ac.uk [mailto:xerte-dev-bounces@lists.nottingham.ac.uk] <b>On Behalf Of </b>Smith, John<br><b>Sent:</b> 11 February 2013 13:23<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Avoiding eval()<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:36.0pt'><o:p> </o:p></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Very true… I think you just have to treat each case on it’s own… there’s always a string parsing way to do it… If it’s not considerably longer than eval then you should probably use alternative code…<o:p></o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><a href="http://jsfiddle.net/aGD44/">http://jsfiddle.net/aGD44/</a> <o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Regards,<o:p></o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>John Smith<o:p></o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Learning Technologist<o:p></o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>School of Health & Life Sciences<o:p></o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Glasgow Caledonian University<o:p></o:p></span></p></div><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:36.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Julian Tenney<br><b>Sent:</b> Monday, February 11, 2013 1:15 PM<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Avoiding eval()<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Yeah, I’m not zealous about it, just in the past I’ve had expression() which avoids it – though presumably introduces the hundreds of lines of code so it can all be evaluated this[varName] style. In this case though, and the risk is slight, you could write JavaScript into a file URL and have it evaluated on the other side<o:p></o:p></span></p><p class=MsoNormal style='margin-left:36.0pt'><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Smith, John<br><b>Sent:</b> 11 February 2013 12:24<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Avoiding eval()<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><o:p> </o:p></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>In a lot of use cases it is EVIL()…. I’ve seen lots of really bad examples…<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Sometimes though it saves hundreds of lines of code and if you are not eval-ing some unknown then why not… it’s just another tool in the box, only dangerous if you don’t know the risks…<o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Regards,<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>John Smith<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Learning Technologist<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>School of Health & Life Sciences<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Glasgow Caledonian University<o:p></o:p></span></p></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Dave Burnett<br><b>Sent:</b> Monday, February 11, 2013 12:12 PM<br><b>To:</b> <a href="mailto:xerte-dev@lists.nottingham.ac.uk">xerte-dev@lists.nottingham.ac.uk</a><br><b>Subject:</b> [Xerte-dev] Re: Avoiding eval()<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US><o:p> </o:p></span></p><div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>John, we're damaged.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Eval = Evil<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Julian and I cut our teeth on this type of discussion:<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-family:"Courier New";background:#FFFFCC'>The friendly challenge was directed to those who, in the past, have said<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-family:"Courier New";background:#FFFFCC'>things like: "Eval is evil" and "The first thing I do when I work on<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-family:"Courier New";background:#FFFFCC'>someone else's code is go through it and remove ALL the Evals." The<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-family:"Courier New";background:#FFFFCC'>friendly challenge was for someone to come up with a better GENERIC,<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-family:"Courier New";background:#FFFFCC'>REUSABLE, DYNAMIC, CUSTOM LIST FUNCTION THAT WOULD WORK FOR ANY COMPATIBLE<o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-family:"Courier New";background:#FFFFCC'>LIST STRUCTURE, AND THAT DID NOT USE EVAL!!!!!!!!!!!!!</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Authorware listserv circa 2002<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>It was a long rant ending with the lister's resignation from the list.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>;-)<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p><div><div style='margin-left:36.0pt'><div class=MsoNormal align=center style='margin-left:36.0pt;text-align:center'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><hr size=2 width="100%" align=center></span></div></div><p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From: <a href="mailto:J.J.Smith@gcu.ac.uk">J.J.Smith@gcu.ac.uk</a><br>To: <a href="mailto:xerte-dev@lists.nottingham.ac.uk">xerte-dev@lists.nottingham.ac.uk</a><br>Date: Mon, 11 Feb 2013 11:49:07 +0000<br>Subject: [Xerte-dev] Re: Avoiding eval()<o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>We use eval several times in the xenith code. If you know the source of what you are eval()ing then I don’t think it’s ‘BAD’…</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Since FileLocation needs to be set in order for eval to work then you can do something with string parsing like</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>var path = FileLocation + </span><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>$(data).find('learningObject').attr('header').split(“’”)[1]</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Regards,</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>John Smith</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Learning Technologist</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>School of Health & Life Sciences</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Glasgow Caledonian University</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Julian Tenney<br><b>Sent:</b> Monday, February 11, 2013 11:09 AM<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Avoiding eval()<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Can you avoid eval? In the case of file paths, the only thing I can think to do is to use eval(), and I know that’s not the ‘right’ thing to do?</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>//get the file path from the string “FileLocation + ‘media/header.png’”</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>var path = eval( $(data).find('learningObject').attr('header') );</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Smith, John<br><b>Sent:</b> 11 February 2013 10:41<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Yeah I couldn’t get any of the methods of jQuery parsing to work with that model in IE with that shape data. Not sure if it breaks some rule or something by having a reserved word etc but I know one of the JSON objects received from an external for one of the models (flickr or delicious or something) uses a reserved word that IE bokes on….</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Regards,</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>John Smith</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Learning Technologist</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>School of Health & Life Sciences</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Glasgow Caledonian University</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Julian Tenney<br><b>Sent:</b> Monday, February 11, 2013 10:26 AM<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> if (typeof data == 'string'){</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> //have to mangel the data for IE, not sure if this works??</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> data = $.parseXML(data);</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> }</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Seems to have done the trick.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Smith, John<br><b>Sent:</b> 11 February 2013 10:23<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Hi Julian</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Check lines 560-568 of the textDrawing.html model as I had to do similar to play nicely in IE. jQuery will quite happily turn text to XML for other browsers though…</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> var xml;</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> if (jQuery.browser.msie) { // Had to add this in to get IE to parse <shapes> correctly</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> xmlDoc.loadXML($(x_currentPageXML).text());</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> xml = xmlDoc;</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> }</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> else {</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> xml = $($(x_currentPageXML).text());</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> }</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Regards,</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>John Smith</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Learning Technologist</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>School of Health & Life Sciences</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Glasgow Caledonian University</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Julian Tenney<br><b>Sent:</b> Monday, February 11, 2013 9:35 AM<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>There’s some funky stuff with IE and ajax in jQuery when you set the dataType to ‘xml’. I did have it set to ‘text’, it’s a known thing and I’ll figure it out.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Ron Mitchell<br><b>Sent:</b> 08 February 2013 16:14<br><b>To:</b> 'For Xerte technical developers'<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Hi Julian</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>I updated a test install but then re-installed over the top so that your template installed in the database so at some point the relevant sql will need to be added to upgrade.php but I'm sure you're aware of that.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>On this test install when viewing properties of either a bootstrap project or an xot project only the flash play.php shows now in the properties window.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>play_bootstrap.php doesn't seem to play very nicely in IE whereas I'm sure <a href="http://www.nottingham.ac.uk/~cczjrt/boostrapLO" target="_blank">http://www.nottingham.ac.uk/~cczjrt/boostrapLO</a> did but that's now showing as forbidden. play_bootstrap.php plays ok in Chrome.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>HTH</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Ron</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><a name="_MailEndCompose"></a><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Julian Tenney<br><b>Sent:</b> 08 February 2013 11:48<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>I got it working, you can check it out and do an xampp install for a quick preview of what’s there so far.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Few observations on hooking it up:</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>- Ages ago, Pat, we talked about firing the data at an ad-hoc page – there is code in the wizard that posts it to wizard.runtime if set, so we did do it. Before I realised this, I set a property called runtime and used it to point the preview to preview_bootstrap.php. I can’t remember if anyone is actually using .runtime to use a different playout or not (I have vague memories of GEM doing this for their PBL stuff?). I could have just posted the data to a page, but then you lose all the security stuff.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>- There is much the same code in the various play_, play_html5, play_bootstrap files that we ought to tidy up at some point.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>- I’ve put my own set of .js libraries etc in the /common folder, so that duplicates some things like jQuery, so it would be better to load common libraries from a central place.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>- I have no idea how hard it is to get appropriate urls showing in the properties tab for the play_, export, etc and have all that working when the template isn’t Nottingham.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>- Otherwise it’s pretty straightforward to add new tools, especially if you can work with the xwd / wizard for an editor, and jQuery makes it really easy to pick up the xml and drive the content. Once this penny drops I can see other people wanting to build their own templates and add them in, so it would be worth smoothing out some time. I can do that probably, but I’m not so sure what needs to be in place to make the properties panel more flexible?</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Cheers,</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Pat @ Pgogy<br><b>Sent:</b> 08 February 2013 09:15<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Preview and play differ in terms of logged in access and password protection - but the display code should be in a library function.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Agree your code base should be shared - wondering if modules could share that. In theory you could add a play parameter to the info file and then probably share the rest of the code?</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>That might work better?<br><br>Pgogy Webstuff - <a href="http://www.pgogywebstuff.com" target="_blank">http://www.pgogywebstuff.com</a></span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Makers of web things of a fair to middling quality</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><br>On 8 Feb 2013, at 09:04, Julian Tenney <<a href="mailto:Julian.Tenney@nottingham.ac.uk">Julian.Tenney@nottingham.ac.uk</a>> wrote:</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Well, it’s more that we have the same code in several places, and things like being able to get the runtime url in the wizard. I added a property to the wizard ‘runtime’ to point to my booststrap.php page. </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>A related question: is there anything different between preview and play, or could I just use the same file for both?</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Pat @ Pgogy<br><b>Sent:</b> 07 February 2013 17:51<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>I would assume we accordion the templates list?<br><br>Pgogy Webstuff - <a href="http://www.pgogywebstuff.com" target="_blank">http://www.pgogywebstuff.com</a></span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Makers of web things of a fair to middling quality</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><br>On 7 Feb 2013, at 16:12, Julian Tenney <<a href="mailto:Julian.Tenney@nottingham.ac.uk">Julian.Tenney@nottingham.ac.uk</a>> wrote:</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'>Yeah, that’s pretty much what I’m doing. It will work and that’s fine, just wondering about the situation where there loads of these things…</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif";color:#1F497D'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='margin-left:72.0pt'><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">xerte-dev-bounces@lists.nottingham.ac.uk</a> [<a href="mailto:xerte-dev-bounces@lists.nottingham.ac.uk">mailto:xerte-dev-bounces@lists.nottingham.ac.uk</a>] <b>On Behalf Of </b>Pat @ Pgogy<br><b>Sent:</b> 07 February 2013 15:47<br><b>To:</b> For Xerte technical developers<br><b>Subject:</b> [Xerte-dev] Re: Modular Play and New Templates<o:p></o:p></span></p></div></div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Duplicate the modules xerte folder into modules new template name</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Keep the edit php file as it is still xerte</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Mangle play and preview to present the HTML<br><br>Pgogy Webstuff - <a href="http://www.pgogywebstuff.com" target="_blank">http://www.pgogywebstuff.com</a></span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Makers of web things of a fair to middling quality</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div></div><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><br>On 7 Feb 2013, at 09:46, Julian Tenney <<a href="mailto:Julian.Tenney@nottingham.ac.uk">Julian.Tenney@nottingham.ac.uk</a>> wrote:</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Question for Pat I think:</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>With the html5 playout, Fay has added play_html5.php that does the work, that’s all fine. I’ve got a new template I’d like to build in that produces this stuff:</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><a href="http://www.nottingham.ac.uk/~cczjrt/boostrapLO" target="_blank">http://www.nottingham.ac.uk/~cczjrt/boostrapLO</a>. The editor is a standard xerte wizard / xwd thing, but it uses its own html page to parse the xml and create the content.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>So I could add another html page to the folder and repeat what Fay has done for html5, but that seems a bit messy to sustain if, one day, we have loads of runtimes doing different things, I wondered if your modular stuff handled this in a more graceful way?</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>There’s another difference here: Fay’s html5 code plays existing content – so you have two alternative urls for the same piece, ultimately we’ll switch toolkits to use the html5 one as the default, and the old one will remain as a legacy. In my case, it doesn’t work like that, these projects will always only use their html page: so that needs to be the url to display in properties for the project, and I guess that’s what needs to export as well.</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>What do you think is the best thing to do?</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Julian</span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> </span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div></blockquote><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:72.0pt'>_______________________________________________<br>Xerte-dev mailing list<br><a href="mailto:Xerte-dev@lists.nottingham.ac.uk">Xerte-dev@lists.nottingham.ac.uk</a><br><a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte-dev" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte-dev</a><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div></blockquote></div></blockquote><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:72.0pt'>_______________________________________________<br>Xerte-dev mailing list<br><a href="mailto:Xerte-dev@lists.nottingham.ac.uk">Xerte-dev@lists.nottingham.ac.uk</a><br><a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte-dev" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte-dev</a><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div></blockquote></div></blockquote><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:72.0pt'>_______________________________________________<br>Xerte-dev mailing list<br><a href="mailto:Xerte-dev@lists.nottingham.ac.uk">Xerte-dev@lists.nottingham.ac.uk</a><br><a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte-dev" target="_blank">http://lists.nottingham.ac.uk/mailman/listinfo/xerte-dev</a><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div></blockquote><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US><br></span><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:gray'>Glasgow Caledonian University is a registered Scottish charity, number SC021474<br><br>Winner: Times Higher Education’s Widening Participation Initiative of the Year 2009 and Herald Society’s Education Initiative of the Year 2009.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name%2c6219%2cen.html" target="_blank">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html</a><br><br>Winner: Times Higher Education’s Outstanding Support for Early Career Researchers of the Year 2010, GCU as a lead with Universities Scotland partners.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name%2c15691%2cen.html" target="_blank">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,15691,en.html</a></span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US><br></span><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:gray'>Glasgow Caledonian University is a registered Scottish charity, number SC021474<br><br>Winner: Times Higher Education’s Widening Participation Initiative of the Year 2009 and Herald Society’s Education Initiative of the Year 2009.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name%2c6219%2cen.html" target="_blank">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html</a><br><br>Winner: Times Higher Education’s Outstanding Support for Early Career Researchers of the Year 2010, GCU as a lead with Universities Scotland partners.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name%2c15691%2cen.html" target="_blank">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,15691,en.html</a></span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p></o:p></span></p></div><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><br></span><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:gray'>Glasgow Caledonian University is a registered Scottish charity, number SC021474<br><br>Winner: Times Higher Education’s Widening Participation Initiative of the Year 2009 and Herald Society’s Education Initiative of the Year 2009.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html</a><br><br>Winner: Times Higher Education’s Outstanding Support for Early Career Researchers of the Year 2010, GCU as a lead with Universities Scotland partners.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,15691,en.html">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,15691,en.html</a><br></span><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><br>_______________________________________________ Xerte-dev mailing list <a href="mailto:Xerte-dev@lists.nottingham.ac.uk">Xerte-dev@lists.nottingham.ac.uk</a> <a href="http://lists.nottingham.ac.uk/mailman/listinfo/xerte-dev">http://lists.nottingham.ac.uk/mailman/listinfo/xerte-dev</a><o:p></o:p></span></p></div></div><p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:72.0pt'><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'><o:p> </o:p></span></p><p class=MsoNormal style='margin-left:72.0pt'><span lang=EN-US><br></span><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:gray'>Glasgow Caledonian University is a registered Scottish charity, number SC021474<br><br>Winner: Times Higher Education’s Widening Participation Initiative of the Year 2009 and Herald Society’s Education Initiative of the Year 2009.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html</a><br><br>Winner: Times Higher Education’s Outstanding Support for Early Career Researchers of the Year 2010, GCU as a lead with Universities Scotland partners.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,15691,en.html">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,15691,en.html</a></span><span lang=EN-US><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:0cm;margin-bottom:12.0pt;margin-left:36.0pt'><o:p> </o:p></p><p class=MsoNormal style='margin-left:36.0pt'><span lang=EN-US><br></span><span lang=EN-US style='font-size:10.0pt;font-family:"Arial","sans-serif";color:gray'>Glasgow Caledonian University is a registered Scottish charity, number SC021474<br><br>Winner: Times Higher Education’s Widening Participation Initiative of the Year 2009 and Herald Society’s Education Initiative of the Year 2009.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,6219,en.html</a><br><br>Winner: Times Higher Education’s Outstanding Support for Early Career Researchers of the Year 2010, GCU as a lead with Universities Scotland partners.<br><a href="http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,15691,en.html">http://www.gcu.ac.uk/newsevents/news/bycategory/theuniversity/1/name,15691,en.html</a></span><span lang=EN-US><o:p></o:p></span></p></div></body></html>