I have created a time sheet entry tool using HTML and java script and am wondering, would it be possible to embed this on the main quick base site either on a form or a report. At the minute it is set up as another HTML page.
Ideally all the functionality of the main site would remain with the HTML page showing within.
Has anyone done anything like this or know if it is possible?
Thanks in advance!
I used to be the President of the image onload sector but I resigned that last year and I am now the President of the import onload sector. It is true - check my profile and contact me if you need help.
[import] & "import.html" & [/import]
All the heavy details are hidden in the definition of the two user defined variables [import] and [/import] and once setup will not need to change. This is the same general technique as used with the image onload technique:
[iol] & "module.js" & [/iol]
These are the most informative articles on understanding HTML Imports:
Exploring HTML Imports
An early version of [import] was posted July 21, 2014. Similar to the image onload technique's usage of the user defined variable [iol], all the details were hidden so that all a user would have to do is specify the module.js file (which is a user defined page within QuickBase). The "import.html" file would likewise be stored as a user defined page within QuickBase. You could store the "import.html" file on another domain if CORS support was enabled. Also, note that this initial version of the [import] formula would only work in Chrome because it did not load the polyfill webcomponents.js (previously named platform.js by Google) necessary to make Web Components work in other browsers.
The original pastie entry is here:
What Is The New QuickBase Hotness? (Import Onload Technique)
but some unenlightened forum administrator unfamiliar with Web Components deleted my original forum post:
It should be obvious from this info and the articles I posted that this is a bleeding edge technique and I believe it will become extremely useful for use with QuickBase. But there are still details that need to be worked out to make it idiot proof, work in all browsers and integrate seamlessly with QuickBase. Also I need to come up with an outrageous name to draw attention to the new technique.So it might be premature to use it with your current project requirements at this time. I have several prototypes working but there are still some tradeoffs I am looking at to make HTML imports and WebComponents work with QuickBase. If you want to discuss it further feel free to contact me using the information in my profile.
I am afraid I don't have the time right now and isn't something that can be rushed. Web Components are new and finding the best way to use them with QuickBase involves trial and error and some inspired thinking. I have prototypes working but I am not satisfied enough to release anything public other than the earlier definition for [import] in this thread.
Perhaps you can place your form in a user defined page (named say myform.html) and include that page on the dashboard using the native "Web Page" widget QuickBase offers. Or you could use jQuery's load() method to inject the HTML in your myform.html into the dashbaord or a cell of a report. These methods are not perfect because you don't get full control over the layout, styling and behavior of your form (without additional scripting that is a bit advanced - but doable). For example, if you use the Web Page widget QuickBase will place your form into an <iframe> in the dashboard and you have to accept or deal with viewport sizing and trapped in a frame issues. Likewise if you inject your page using $.load() there may be an interaction between QuickBase's CSS and the styling you expect on your form because all the content (native and your injected HTML) is in one page. Web Components is designed to avoid these problems but the patterns of using Web Components alone as well as applying them to QuickBase have to be worked out.
Subdatasheet ~ List All Report (click on +/- sign in first data column to show/hide child records)
I have no idea what you HTML page does but your HTML can be inserted into the report using similar techniques using jQuery.
If you need individual assistance implementing this solution fee free to contact me off-world using the information in my profile: