Пример #1
0
SwipeModal.prototype.show = function(data){
  data = this.santitize(data);
  var self = this;
  var config = this.config;
  var submit = config.submit;
  var cancel = config.cancel;
  var elem = this.elem = $(tpl.render(config.template,data));
  elem.find(".submit").on("tap",function(){
    if(self.submitting){return}
    self.submitting = true;
    var data = self.getData();
    var isValid = self.validate(data);

    if(isValid){
      if(!submit){
        self.emit("submit",data);
        self.submitting = false;
      }else{
        submit.bind(self)(data,function(result){
          self.emit("submit",result);
          self.submitting = false;
        });
      }
    }
  });

  elem.find(".cancel").on("tap", function(){
    self.emit("cancel");
  });

  hashState.setHash(this.name);
  this.emit("show");
  this._show && this._show(data);
}
Пример #2
0
  .done(function(){

    if(type == "add"){
      var template = "<div class='wrap'><div class='text'>"
        +"<p class='title'>@{it.address}</p>"
        +"<p class='desc'>@{it.carpark}</p>"
      +"</div>"
      +"<div class='edit'>修改</div></div>";
      var html = tpl.render(template,data);
      li = $("<li class='row'/>").attr('data-addr',JSON.stringify(data)).html(html);
      addressesList.append(li);
    }else{
      var li = $(".addresses .row").eq(index);
      li.attr("data-addr", JSON.stringify(data));
      li.find(".title").text(data.address);
      li.find(".desc").text(data.carpark);
    }

    $(".addresses .wrap").show();
    $("#input-latlng").val('');
    $("#input-address").val('');
    $("#input-carpark").val('');
    addaddressPanel.hide();
    addaddress.show();
  })
Пример #3
0
panelAddCar.on("submit",function(data){
  carsSelect.add(data);
  var template = "<li data='" + JSON.stringify(data) + "'>"
    +"<div class='detail'>"
      +"<div class='type'>@{it.type}@{it.color}</div>"
      +"<div class='number'>@{it.number}</div>"
    +"</div></li>";
  var html = tpl.render(template,data);
  var li = $(html);
  carsList.append(li);
  if($(".cars-cell li").length >= 5){
    addbtn.remove();
  }
  calculate();
});
Пример #4
0
panelAddCar.on("submit",function(data){
  var template = "<div class='text'>"
      +"<p class='title'>@{it.type} @{it.color}</p>"
      +"<p class='desc'>@{it.number}</p>"
    +"</div>"
    +"<div class='edit'>修改</div>";
  var html = tpl.render(template,data);
  var li;
  if("index" in data){
    li = $(".cars li:eq(" + data.index + ")");
    delete data.index;
    li.attr('data-addr',JSON.stringify(data)).html(html);
  }else{
    li = $("<li class='row'/>").attr('data-addr',JSON.stringify(data)).html(html);
    carsList.append(li);
  }
});
Пример #5
0
FinishOrder.prototype.show = function(data){
  console.log(data);
  var html = tpl.render(template,data);
  var elem = $(html);
  var self = this;
  viewSwipe.in(elem[0],"bottom");

  $(".user-photos").each(function(i,el){
    var $el = $(el);

    uploader.init( $el.find(".add-photo"),{
      type:"multiple",
      prefix:"carwash/",
      queueTarget:$el.find(".finish_photos"),
      maxItems: 3
    }).on("add",function(){
      uploading = true;
    }).on("complete",function(){
      uploading = false;
    }).on("error", function(){
      uploading = false;
    });
  });

  uploader.init(".breakage-upload .add-photo",{
    type:"multiple",
    prefix:"carbreak/",
    queueTarget:$(".breakage_photos")
  }).on("add",function(){
    uploading = true;
  }).on("complete",function(){
    uploading = false;
  }).on("error", function(){
    uploading = false;
  });

  $('.breakage img').each(function(){
      var $img = jQuery(this);
      var imgID = $img.attr('id');
      var imgClass = $img.attr('class');
      var imgURL = $img.attr('src');

      jQuery.get(imgURL, function(data) {
          // Get the SVG tag, ignore the rest
          var $svg = jQuery(data).find('svg');

          // Add replaced image's ID to the new SVG
          if(typeof imgID !== 'undefined') {
              $svg = $svg.attr('id', imgID);
          }
          // Add replaced image's classes to the new SVG
          if(typeof imgClass !== 'undefined') {
              $svg = $svg.attr('class', imgClass+' replaced-svg');
          }

          // Remove any invalid XML tags as per http://validator.w3.org
          $svg = $svg.removeAttr('xmlns:a');

          // Replace image with new SVG
          $img.replaceWith($svg);

      }, 'xml');

  });


  elem.find(".submit").on("tap", function(){
    self.confirm();
  });

  elem.find(".cancel").on("tap", function(){
    self.emit("cancel");
    viewSwipe.out("bottom");
  });

  multiSelect($("#finishorder"),".breakage");

  return this;
}