Advertisement
Guest User

Untitled

a guest
Nov 18th, 2014
570
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. $(function() {
  2.  
  3.  
  4.     document.addEventListener("deviceready", onDeviceReady, false);
  5.  
  6.     function onDeviceReady() {
  7.         $(document).on('click', '.camera', function(){
  8.  
  9.             if (!navigator.camera) {
  10.                 alert("Camera API not supported", "Error");
  11.                 return;
  12.             }
  13.             var options =   {   quality: 65,
  14.                 destinationType: Camera.DestinationType.DATA_URL,
  15.                 sourceType: 1,      // 0:Photo Library, 1=Camera, 2=Saved Album
  16.             };
  17.  
  18.             function addHiddenElement(elementId, imgData){
  19.                 $("<input>", {
  20.                     type: "hidden",
  21.                     value: "data:image/jpeg;base64," + imgData,
  22.                 }).insertAfter("#" + elementId);
  23.             }
  24.            
  25.             function imageData(elementId){
  26.                 navigator.camera.getPicture( function(imgData) {
  27.                     addHiddenElement(elementId, imgData);
  28.                     //return imgData;
  29.  
  30.                 }, function() {
  31.                     alert('Camera not working');
  32.                 }, options);
  33.             }
  34.  
  35.             imageData(this.id);
  36.         });
  37.  
  38.         //check and display network connection on submitted entries page.
  39.         setInterval(function () {
  40.             if (navigator.connection.type != Connection.NONE) {
  41.                 $("#connection").html("You are connected");
  42.                 //$(".submitentry").removeAttr("disabled");
  43.             } else {
  44.                 $("#connection").html("No internet");
  45.             }
  46.         }, 5250);
  47.  
  48.         $(document).on("submit", "form", function(event){
  49.             var formId= $("input[name='form_id']").attr("value");
  50.             console.log(formId);
  51.             event.preventDefault();
  52.             var submittedEntryJson = $(this).serializeArray();
  53.             storePreviousSubmission(submittedEntryJson);
  54.             var submittedEntryString = $(this).serialize();
  55.             if (navigator.connection.type == Connection.NONE) {
  56.                 alert("No internet connection!");
  57.                 storeSubmittedEntry(submittedEntryString, formId);
  58.                 listSubmittedEntries();
  59.             } else {
  60.                 $.ajax({
  61.                     type: 'POST',
  62.                     url: "http://app.appspot.com/submit",
  63.                     data: submittedEntryString,
  64.                     crossDomain: true,
  65.  
  66.                 }).done(function(){
  67.                         alert("Checklist saved!");
  68.  
  69.                     })
  70.                     .fail(function(){
  71.                         alert("upload failes!");
  72.                     });
  73.             }
  74.             document.location.href = 'index.html';
  75.         });
  76.     }
  77.  
  78.     function updateChecklists(){
  79.         requestAllForms = $.getJSON("http://fonstertitt.appspot.com/list-all-forms");
  80.  
  81.         requestAllForms.promise().done(function(data){
  82.             localStorage.removeItem("checklists");
  83.             localStorage.checklists = JSON.stringify(data);
  84.             $.each(data,function(key, val){
  85.                 $("<li><a class='checklistObject' id='" + val.id +"'>" + val.name +"</a></li>").appendTo("#list-all-forms");
  86.             });
  87.             $('#list-all-forms').listview().listview('refresh');
  88.         });
  89.     }
  90.  
  91.     function listSubmittedEntries(){
  92.         if (localStorage.submittedEntries) {
  93.             var entries = JSON.parse(localStorage.submittedEntries);
  94.             $.each(entries, function(key, val){
  95.                 $("<li><a  id='" + val.timestamp +"'>" + val.timestamp + "</a></li>").appendTo("#list-submitted-entries");
  96.             });
  97.         }
  98.         $('#list-submitted-entries ul').listview().listview('refresh');
  99.     }
  100.  
  101.     function listPreviousSubmissions(){
  102.         if (localStorage.previousSubmissions) {
  103.             i = 0;
  104.             $.each(JSON.parse(localStorage.previousSubmissions), function(key, val){
  105.                 if (i == 5) {
  106.                     return false;
  107.                 }
  108.                 var datetime = new Date(val.timestamp + 3600 * 1000);
  109.                 datetime = datetime.toISOString();
  110.                 $("<li><a id='" + val.form_id +"' class='previousSubmissionObject' name=" + val.timestamp + "><h3>" + val.form_name +"</h3><p>Sparad: " + prettyDate(datetime) +"</p></a></li>").appendTo("#list-all-previous-submissions");
  111.                 i ++;
  112.             });
  113.  
  114.             $('#list-all-previous-submissions').listview().listview('refresh');    
  115.         }
  116.     }
  117.  
  118.     listSubmittedEntries();
  119.  
  120.     updateChecklists();
  121.  
  122.     listPreviousSubmissions();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement