All Activity

This stream auto-updates     

  1. Yesterday
  2. Listbox Auto Height

    I'm looking for a listbox to only have enough rows for the contents of the list...you can set it for a certain number of rows, but if you set it for 5 rows and consistently have 2 records, then there is extra space...I'd like the list box to be smart and not have the extra space.
  3. Listbox Auto Height

    Hi! I may know where you are going with this, but i am having a hard time visualizing what you define as a "box" that auto sizes. Do you have an iframe, window, or webpage of a set width and height that needs to be resized? Usually pages will autosize for my lists with no problem.
  4. Members Only Wix Page - How to pass parameter to Caspio DataPage

    thanks anyway, but telling someone to scrap everything they have and use something different isn't a solution. The follow-up question of course is there a way to communicate in and out of iframe. Caspio gives the option to deploy into iframes. Would that make any difference? It would seem odd and a gross oversight to me (a non programmer) that anyone would produce a technology that is a black box.
  5. How to create repeatable section in the submission form?

    How do you wish to store this information? I suppose it should be different records. If yes, you may specify "same form" in the destination page. This will let you open a clean form again after previous information is entered. If you wish to keep all the information in one records, you may have a look at this solution
  6. Hi, Wix deploys datapages in iframe and it's impossible to pass parameters from/to datapages or use scripts with redirection I would suggest selecting another CMS like weebly, wordpress.org, godaggy, etc.
  7. Last week
  8. Multiple Submissions Of Form In One Page

    Hi Kirkman, If you also want to duplicate a specific block/section of fields inside the DataPage, you can try the following: Add a Header/Footer section to your submission/update form. Go to the Header section. On the header section's Advanced tab, disable the HTML editor as mentioned in this article: http://howto.caspio.com/faq/web-forms/how-to-disable-html-editor-in-datapage-headerfooter-and-html-blocks/ Then add this code: <!-- Header code --> <!-- Latest jQuery + jQuery Migrate --> <script src="https://code.jquery.com/jquery-3.2.1.js"></script> <script src="https://code.jquery.com/jquery-migrate-3.0.0.js"></script> Add an HTML block before the first field you want to include in the repeatable section. On the HTML block's Advanced tab, disable the HTML editor as mentioned in this article: http://howto.caspio.com/faq/web-forms/how-to-disable-html-editor-in-datapage-headerfooter-and-html-blocks/ Then add this code: <!-- BEGIN: Repeatable Section --> <table class="datapage-fields"> Add an HTML block after the last field you want to include in the repeatable section. On the HTML block's Advanced tab, disable the HTML editor as mentioned in this article: http://howto.caspio.com/faq/web-forms/how-to-disable-html-editor-in-datapage-headerfooter-and-html-blocks/ Then add this code: <!-- END: Repeatable Section --> </table> Add another HTML block after the HTML block in STEP #8. On the HTML block's Advanced tab, disable the HTML editor as mentioned in this article: http://howto.caspio.com/faq/web-forms/how-to-disable-html-editor-in-datapage-headerfooter-and-html-blocks/ Then add this code: <!-- HTML Block code --> <button class="add-space" style="display: inline-block !important; float: right;">Add Space</button> <!-- Custom scripts --> <script> $(document).ready( function (event) { var addSpaceButton = $('.add-space'); addSpaceButton.click( function (event) { event.preventDefault(); var dpFields = $('.datapage-fields').last(); var dpFieldsClone = dpFields.clone(); dpFields.after(dpFieldsClone); } ); } ) </script> Hope this helps.
  9. Hi dspolyglot, You can try creating an HTML block and put this template code: <div id="row-marker-[@field:ID_FIELD_NAME]"></div> <script> var marker = document.getElementById('row-marker-[@field:ID_FIELD_NAME]'); var column = marker.parentNode; if ('[@calcfield:1]' === '') { var row = column.parentNode; row.parentNode.removeChild(row); } </script> Please replace ID_FIELD_NAME with the actual name of your ID/AutoNumber field. Also, don't forget to replace [@calcfield:1] with the actual calculated field you're using. Hope this helps.
  10. Hello, I saw this How-to article on changing the background of a row based on the value of a field: http://howto.caspio.com/tech-tips-and-articles/advanced-customizations/how-to-dynamically-change-the-background-of-a-results-page/ However, I need to delete the row instead of changing its background color. Also, I need to delete the row when a calculation returns a blank value. Is this possible? I don't know how to write JavaScript code.
  11. Timestamp using Java

    Hello dongtac, Have you considered to use Timestamp data type within your table? http://howto.caspio.com/tech-tips-and-articles/common-customizations/stamp-the-time-url-or-ip-address-to-new-and-updated-records/ You can define date formatting in field advanced section in Datapage wizard: http://howto.caspio.com/localizations/formatting-options/ Hope this helps.
  12. creating multiple tables rather than a huge database

    Hi Newgoblin49, You can create a relational database in Caspio. You may find more details here: http://howto.caspio.com/tables-and-views/relationships/ Hope this helps.
  13. Hi, I was wondering how would I go about creating a school database in caspio that has an individual table for every class with the marks of the students. rather than having a single table with all 1000 sudents of the school . I need to work just so the students can see their results online. the results we stored in the table
  14. Timestamp using Java

    Hi I was hoping someone could help me with creating some javascript. I have no knowledge of it whatsoever but it appears to be the only solution to my problem without using a pop up calendar (which seems to take forever on my pc to come up). I want a timestamp to be put against all my submissions, but I only want DD/MM/YY recorded, and not DD/MM/YY HH:MM as is currently the set up in caspio. I wish to sort my results by day, but at the minute if I do a sort based on the current timestamp they will sort by day by hour by minute. I want my results to show the best price per day (eg Monday) as opposed to by minute the data was entered. I have tried to amend the sample javascript given in the tutorial but I am not having much success. Can anyone give me a helping hand? This was my last attempt (please don't laugh):- (my timestamp field is called "date", and it is an update datapage) //(1) Declaration and initialization Stamp = new Date(); var v_TimeStamp; //(2) Construct the value of the v_TimeStamp variable in the format mm/dd/yyyy v_TimeStamp=('' + (Stamp.getMonth() + 1) +"/"+Stamp.getDate()+ "/"+Stamp.getFullYear(); //(3) Field name - Date is referred with a prefix - EditRecord document.forms[0].UpdateDate.value=v_TimeStamp; Any help is greatly appreciated. Thanks
  15. Run script onload and onchange?

    Hello mdav20, I would suggest creating the separate function, so you could call this function with a different event "onload". Hope this helps.
  16. So I have a Wix page already set up and the table DataPage works fine except it is stuck on the parameter value I originally set. The ideal solution here is that when a user logs in, Wix passes/creates a parameter [@email_address]. This is already set as a unique value in a Caspio table. From there I can get [@player_id] which would then be used as authentication in the datapae, I just need a way to take the sign in from Wix and use that to define the authentication for the datapage. If this isn't possible, then I will have to create a two tiered login for all users (1 for the site and a second for data entry). All users are intended to enter data so it seems unnecessarily redundant.
  17. Hi there, I've built a page that has a grid of images, allowing users to click on these images to make a selection ... and then I want these selections to all be saved to a table as separate entries along with their user information. So far, I can get only 1 selection to pass to the table. If they click on one of the images, that is sent to the table, fine. I've set it up so that each selection is added to the string, separated by a comma, but then this passes to the table as a single entry with the comma separated string. This is my code: function SelDatasource1() { document.getElementById("Datasource1").className = "SELECTED"; document.getElementById("InsertRecordDatasource").value += "Datasource1,"; document.getElementById("InsertRecordProject").value += "[@authfield:User_info_Project],"; document.getElementById("InsertRecordDatasource").multiple = true; } function SelDatasource2() { document.getElementById("Datasource2").className = "SELECTED"; document.getElementById("InsertRecordDatasource").value += "Datasource2,"; document.getElementById("InsertRecordProject").value += "[@authfield:User_info_Project],"; document.getElementById("InsertRecordDatasource").multiple = true; } ...etc etc ... there are over 30 of these. If somebody selects Datasource1, Datasource5, Datasource12, it shows up in the table like this: PROJECT DATASOURCE Project1,Project1,Project1 Datasource1,Datasource5,Datasource12 I am using a Submission form datapage at present, and have added my code using html blocks and footer. 2 things I need help on: 1. I know there is a better way to add a comma to the string, other than putting it in like this (i.e. value +="Datasource1,"). This way, a comma is added for a single entry and at the end of a long string, which I don't want to do - can anybody help me with this? 2. Can I pass this comma separated string so that it shows up in my table like this: PROJECT DATASOURCE Project1 Datasource1 Project1 Datasource5 Project1 Datasource12 Any help would be greatly appreciated! Many thanks Nikki
  18. Hi planet13, You can try this revised code: <script type="text/javascript"> function uppercase(field) { return function () { field.value = field.value.toUpperCase(); } } var fields = document.querySelectorAll('input[type="text"][id^="InsertRecord"]'); fields.forEach( function (field, index) { field.oninput = uppercase(field); } ); </script> Hope this helps.
  19. I have the following script for onchange... I would like run it onload also, is there a easy way to do it? <SCRIPT LANGUAGE="JavaScript"> function calculate() { var current = parseFloat(document.getElementById("cbParamVirtual1").value); if (isNaN(current)) current = 0; var installed ='[@calcfield:2]'; var total_hrs ='[@calcfield:1]'; var currenttotal = parseFloat((current - installed) + parseFloat(total_hrs)); document.getElementById("cbParamVirtual2").value =Math.max(0, currenttotal); } document.getElementById("details").onchange=calculate; </SCRIPT> Thanks in advance!
  20. Can JS extract data from data table?

    Well, Lets say I've got a table called 'Customer_services' with 3 fields; Name, Country, Product (all text fields). 3 records in the table: 1. Sue USA Rake 2. Eric Spain Fork 3. Sue Mexico Rake I'd like to create a variable containing all countries and products associated with 'Sue'. So what I want is: myvariable = 'USA, Rake, Mexico, Rake' Hope this is possible. Thanks MayMusic
  21. Embed Within A Datapage, A Pdf Stored On Caspio Database

    Are you sure this works? I am encoding the URL with Javascript, but every time I get a "No Preview Available" message. When I decode the URL back, it downloads fine... Here is my code: <iframe id="iframe_pdf" style="width:80%; height: 1100px; display: none;" align="middle" frameborder="0"></iframe> <script> window.onload = function(){ if(!("[@field:cs_form/]" == "")){ embed_pdf(); } } function embed_pdf(){ var google_link= "https://docs.google.com/gview?url="; var google_param = "&embedded=true"; var pdf_link = "[@field:cs_form/]"; var encoded_pdf_link = encodeURIComponent(pdf_link); var iframe_window = document.getElementById("iframe_pdf"); iframe_window.style.display = "block"; iframe_window.src=google_link + encoded_pdf_link + google_param; } </script> EDIT: I found out why it wouldn't show, the datapage was authenticated. And unless you are signed in OR Un-authenticate the datapage, you will not be able to see the PDF. Now... is there a way to pass google the authentication...
  22. I figured it out thanks to this by @mayMusic Thanks @MayMusic
  23. I'm trying to calculate the number of hrs on a report details page. Its simply (hrs_removed - hrs_installed) nothing fancy. Here is the code I'm trying to use in the footer of my report details page. <SCRIPT LANGUAGE="JavaScript"> function calculate() { var v_field1 = parseFloat(document.getElementById ("EditRecordhrs_removed").value); if (isNaN(v_field1)) v_field1 = 0; var v_field2 = parseFloat(document.getElementById ("EditRecordhrs_installed").value); if (isNaN(v_field2)) v_field2 = 0; var v_total = (v_field1 - v_field2); document.getElementById("EditRecordhrs_total").value = (v_total); } document.getElementById("caspioform").onchange=calculate; </SCRIPT> Trying to get it populate the hrs_total field after putting in the hrs_removed and hrs_installed and before submitting the form.
  24. Hi, I'm stuck on an issue and I'm hoping somebody will be able to help! What I have so far: a table named "Datasources" with a single line for each entry with 2 fields - project and datasource Each Project can have multiple datasources, so some projects may have 20 entries or some may have only 2 or 3, so the table looks like this: PROJECT DATASOURCE [ProjectA] [Datasource1] [ProjectA] [Datasource2] [ProjectA] [Datasource3] [ProjectB] [Datasource1] [ProjectB] [Datasource5] [ProjectB] [Datasource8] etc etc What I need to do: I would then like to set up a datapage, which is like a shop of sorts. It will display 20 different images relating to a library of items available for selection. These would be Datasources 1-20. I would like this page to display all of these logos, but show visually somehow if they have already been selected by that particular project in the Datasources table. So in the example above, when somebody from ProjectB views the table, they will see all 20 datasources, but only Datasource 1, 5 and 8 will be ticked. They then need to be able to select new ones should they wish. So they can click on the logos for Datasource 6, 9 and 10, and when they click the update button those 3 new entries will be passed to the Datasources table. When they refresh the page, Datasources 1,5,6,8,9,10 are all ticked. The issues I have are: How can I get the datapage to search every item in the table and show a different image (i.e. one with a tick overlayed) if that particular project has already selected that datasource? i.e. search table, IF project = ProjectA and Datasource = Datasource2 anywhere in the table, display image "datasource2-ticked". I don't want it to just search one line of the table, but the whole table. How can I get the page of logos to update multiple lines in the same table? i.e. Datasource1 image = "datasource1-grey" UNLESS it has already been selected, in which case image = "datasource1-ticked". Onclick image becomes "datasource1-colour" AND a new record is created with @Project in project column and Datasource1 in @Datasource column. And at the same time this can be done if multiple logos are selected, a new record is created for each one. Help! Many thanks Nikki
  25. Earlier
  26. Hello, I would like to create a calculated field in tabular report datapage that displays a column in related table as a concatenated string. For Example, many of my apps use the tblPlants as a data source. This is a table of plant species that has a one-to-many relationship with many other tables. I would like to present a field in the report that lists the the botanical gardens for each plant is found in from the tblBG as a string. SELECT STRING_AGG(tblBG.Garden,",") FROM tblBG WHERE tblBG.PlantID = [@field:PlantID]; I get an error that say there is a syntax error near "(", which I take to meant hat the STRING_AGG function does not exist. Is there another function I could use to accomplish this?
  27. Hide section in list report

    Also...how do you get this script to work for multiple sections? What I'm looking to do is have different sections that display the fields in those sections when the user clicks on the name of the section. The code provided works for one section, but when I try to use it for multiple sections on a list datapage, it only works for the first section...all others fail to open/close.
  1. Load more activity