Atozed Forums
javascript in a template HTML - Printable Version

+- Atozed Forums (https://www.atozed.com/forums)
+-- Forum: Atozed Software Products (https://www.atozed.com/forums/forum-1.html)
+--- Forum: IntraWeb (https://www.atozed.com/forums/forum-3.html)
+---- Forum: English (https://www.atozed.com/forums/forum-16.html)
+----- Forum: IntraWeb General Discussion (https://www.atozed.com/forums/forum-4.html)
+----- Thread: javascript in a template HTML (/thread-2259.html)



javascript in a template HTML - bhainak - 01-20-2021

Hello in my application, i  am using a template file to with th IWTemplateProcessorHTML1 component. 
In this template i have a little Javascript to know the type of device ( iphone, PC ....etc)
when i open th Html file inChrom ,it is ok the test is ok and my variables are appaering in Chrome.

But in my application nothin , the application is launching but nothing ara display en the screen.

We can't make java script in a template.

So, if it is my problem,  how can i do to make javascript in my program, where , and how can i retrieve the result of the javascript in a delphi variable 


this is my template
<html>
  <head>
    <title></title>
  </head>

  <body>
  <SCRIPT LANGUAGE="JAVASCRIPT" TYPE="TEXT/JAVASCRIPT">
if( navigator.userAgent.match(/iPhone/i)
|| navigator.userAgent.match(/webOS/i)
|| navigator.userAgent.match(/Android/i)
|| navigator.userAgent.match(/iPad/i)
|| navigator.userAgent.match(/iPod/i)
|| navigator.userAgent.match(/BlackBerry/i)
|| navigator.userAgent.match(/Windows Phone/i)
){
document.write(' <div align="center">');
document.write('   Vente à distance<br/>');
document.write('Merci de vous loguer <br/>');
document.write('<br/>');
document.write('{%iwlabel1%}  &nbsp;&nbsp;&nbsp;&nbsp;{%user%}&nbsp;<br/>');
document.write('<br/>');
document.write('{%iwlabel2%}&nbsp;{%mdp%}<br/>');
document.write('<br/>');
document.write('{%valider%}&nbsp;<br/>');
 
document.write('<br/>');
document.write('{%iwlabel5%}<br/>');
document.write('{%iwlabel6%}<br/>');
document.write('{%iwlabel4%}&nbsp;&nbsp;{%nmdp1%}<br/>');
document.write('<br/>');
document.write('{%iwlabel3%}&nbsp;{%nmdp2%}<br/>');
document.write('{%changermdp%}&nbsp;<br/>');
document.write('{%iwimage2%}<br/>');
document.write('{%iwimage1%}<br/>');
document.write('{%iwlabel9%}<br/>');
 
 
document.write('</div>');

  }
else {
   
document.write('<div align="center">')
document.write('  IPHONE{%iwlabel7%}<br/>')
    document.write('{%iwlabel8%}<br/>')
document.write('<br/>')
document.write('{%iwlabel1%}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{%user%}&nbsp;<br/>')
document.write('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{%valider%}&nbsp;<br/>')
document.write('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{%iwlabel2%}&nbsp;{%mdp%}&nbsp;&nbsp;{%iwimage4%}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp<br/>')
document.write('<br/>')
document.write('<br/>')
document.write('{%iwlabel5%}<br/>')
document.write('{%iwlabel6%}<br/>')
document.write('<br/>')
document.write('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{%iwlabel4%}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{%nmdp1%}&nbsp;&nbsp;{%iwimage5%}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>')
 
document.write('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{%changermdp%}&nbsp;<br/>')
document.write('&nbsp;&nbsp;{%iwlabel3%}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{%nmdp2%}&nbsp;&nbsp;{%iwimage6%}<br/>')
document.write('{%iwimage2%}<br/>')
document.write('{%iwimage3%}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{%iwimage1%}{%iwimCR%}{%iwLCR%}<br/>')
document.write('{%iwlabel9%}<br/>')
document.write('{%iwlabel10%}<br/>')
document.write('{%iwbutton1%}<br/>')
document.write('<br/>')

document.write('&nbsp;&nbsp;{%chadmin%}&nbsp;&nbsp;{%mdpad%}&nbsp;&nbsp;{%btnad%}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>')

document.write('</div>');

 
}
  </SCRIPT
 
     
 
  </body>
</html>



Thank's


RE: javascript in a template HTML - kudzu - 01-20-2021

Templates are processed on the server. You can't write out the template on the client side using JS because the Delphi code does not have access to it.

I suggest you detect the browser on the server and alter which template file the page uses based on that. The template processor system is pluggable as well if you want to clone it to build this functionality into a new template processor.


RE: javascript in a template HTML - bhainak - 01-21-2021

Hello I'm sorry I understood the first sentence but the rest below, I did not understand your explanations at all, would you have an example to illustrate, Thank you

"I suggest you detect the browser on the server and change the template file used by the page depending on that. The template processor system is also pluggable if you want to clone it to integrate this functionality into a new processor. model"


RE: javascript in a template HTML - Alexandre Machado - 01-21-2021

Here are some demos using templates:

https://github.com/Atozed/IntraWeb/tree/master/XIV/Delphi/Template%20Demos

https://github.com/Atozed/IntraWeb/tree/master/15/Delphi/DataTables_template


RE: javascript in a template HTML - kudzu - 01-21-2021

(01-21-2021, 08:33 AM)bhainak Wrote: Hello I'm sorry I understood the first sentence but the rest below, I did not understand your explanations at all, would you have an example to illustrate, Thank you

"I suggest you detect the browser on the server and change the template file used by the page depending on that. The template processor system is also pluggable if you want to clone it to integrate this functionality into a new processor. model"

The template system is pluggable. We ship source to the template processor. If you wanted, you could easily copy that source and modify it to use different templates based on browser type.