HOME


Mini Shell 1.0
Login Page - Texind
png


Welcome to Texind Admin Portal! 馃憢

DIR: /home/u358511784/domains/texindcolors.com/public_html/public/js/
Upload File :
Current File : /home/u358511784/domains/texindcolors.com/public_html/public/js/common.js
/* $(".menu").click(function(){
    var url=$(this).attr('data-url');            
    $.ajax({
            type: "get",
            url:url,
            data: {  },
            cache: false,
           
            success: function(data)
            {
                $(".content").removeClass('first-content');
                $(".content").addClass('fourth-content');
                $(".container-fluid").empty();
                $(".container-fluid").html(data);
                
            }
  });

}) */

'use strict';

class Color {
  constructor(r, g, b) {
    this.set(r, g, b);
  }
  
  toString() {
    return `rgb(${Math.round(this.r)}, ${Math.round(this.g)}, ${Math.round(this.b)})`;
  }

  set(r, g, b) {
    this.r = this.clamp(r);
    this.g = this.clamp(g);
    this.b = this.clamp(b);
  }

  hueRotate(angle = 0) {
    angle = angle / 180 * Math.PI;
    const sin = Math.sin(angle);
    const cos = Math.cos(angle);

    this.multiply([
      0.213 + cos * 0.787 - sin * 0.213,
      0.715 - cos * 0.715 - sin * 0.715,
      0.072 - cos * 0.072 + sin * 0.928,
      0.213 - cos * 0.213 + sin * 0.143,
      0.715 + cos * 0.285 + sin * 0.140,
      0.072 - cos * 0.072 - sin * 0.283,
      0.213 - cos * 0.213 - sin * 0.787,
      0.715 - cos * 0.715 + sin * 0.715,
      0.072 + cos * 0.928 + sin * 0.072,
    ]);
  }

  grayscale(value = 1) {
    this.multiply([
      0.2126 + 0.7874 * (1 - value),
      0.7152 - 0.7152 * (1 - value),
      0.0722 - 0.0722 * (1 - value),
      0.2126 - 0.2126 * (1 - value),
      0.7152 + 0.2848 * (1 - value),
      0.0722 - 0.0722 * (1 - value),
      0.2126 - 0.2126 * (1 - value),
      0.7152 - 0.7152 * (1 - value),
      0.0722 + 0.9278 * (1 - value),
    ]);
  }

  sepia(value = 1) {
    this.multiply([
      0.393 + 0.607 * (1 - value),
      0.769 - 0.769 * (1 - value),
      0.189 - 0.189 * (1 - value),
      0.349 - 0.349 * (1 - value),
      0.686 + 0.314 * (1 - value),
      0.168 - 0.168 * (1 - value),
      0.272 - 0.272 * (1 - value),
      0.534 - 0.534 * (1 - value),
      0.131 + 0.869 * (1 - value),
    ]);
  }

  saturate(value = 1) {
    this.multiply([
      0.213 + 0.787 * value,
      0.715 - 0.715 * value,
      0.072 - 0.072 * value,
      0.213 - 0.213 * value,
      0.715 + 0.285 * value,
      0.072 - 0.072 * value,
      0.213 - 0.213 * value,
      0.715 - 0.715 * value,
      0.072 + 0.928 * value,
    ]);
  }

  multiply(matrix) {
    const newR = this.clamp(this.r * matrix[0] + this.g * matrix[1] + this.b * matrix[2]);
    const newG = this.clamp(this.r * matrix[3] + this.g * matrix[4] + this.b * matrix[5]);
    const newB = this.clamp(this.r * matrix[6] + this.g * matrix[7] + this.b * matrix[8]);
    this.r = newR;
    this.g = newG;
    this.b = newB;
  }

  brightness(value = 1) {
    this.linear(value);
  }
  contrast(value = 1) {
    this.linear(value, -(0.5 * value) + 0.5);
  }

  linear(slope = 1, intercept = 0) {
    this.r = this.clamp(this.r * slope + intercept * 255);
    this.g = this.clamp(this.g * slope + intercept * 255);
    this.b = this.clamp(this.b * slope + intercept * 255);
  }

  invert(value = 1) {
    this.r = this.clamp((value + this.r / 255 * (1 - 2 * value)) * 255);
    this.g = this.clamp((value + this.g / 255 * (1 - 2 * value)) * 255);
    this.b = this.clamp((value + this.b / 255 * (1 - 2 * value)) * 255);
  }

  hsl() {
    // Code taken from https://stackoverflow.com/a/9493060/2688027, licensed under CC BY-SA.
    const r = this.r / 255;
    const g = this.g / 255;
    const b = this.b / 255;
    const max = Math.max(r, g, b);
    const min = Math.min(r, g, b);
    let h, s, l = (max + min) / 2;

    if (max === min) {
      h = s = 0;
    } else {
      const d = max - min;
      s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
      switch (max) {
        case r:
          h = (g - b) / d + (g < b ? 6 : 0);
          break;

        case g:
          h = (b - r) / d + 2;
          break;

        case b:
          h = (r - g) / d + 4;
          break;
      }
      h /= 6;
    }

    return {
      h: h * 100,
      s: s * 100,
      l: l * 100,
    };
  }

  clamp(value) {
    if (value > 255) {
      value = 255;
    } else if (value < 0) {
      value = 0;
    }
    return value;
  }
}

class Solver {
  constructor(target, baseColor) {
    this.target = target;
    this.targetHSL = target.hsl();
    this.reusedColor = new Color(0, 0, 0);
  }

  solve() {
    const result = this.solveNarrow(this.solveWide());
    return {
      values: result.values,
      loss: result.loss,
      filter: this.css(result.values),
    };
  }

  solveWide() {
    const A = 5;
    const c = 15;
    const a = [60, 180, 18000, 600, 1.2, 1.2];

    let best = { loss: Infinity };
    for (let i = 0; best.loss > 25 && i < 3; i++) {
      const initial = [50, 20, 3750, 50, 100, 100];
      const result = this.spsa(A, a, c, initial, 1000);
      if (result.loss < best.loss) {
        best = result;
      }
    }
    return best;
  }

  solveNarrow(wide) {
    const A = wide.loss;
    const c = 2;
    const A1 = A + 1;
    const a = [0.25 * A1, 0.25 * A1, A1, 0.25 * A1, 0.2 * A1, 0.2 * A1];
    return this.spsa(A, a, c, wide.values, 500);
  }

  spsa(A, a, c, values, iters) {
    const alpha = 1;
    const gamma = 0.16666666666666666;

    let best = null;
    let bestLoss = Infinity;
    const deltas = new Array(6);
    const highArgs = new Array(6);
    const lowArgs = new Array(6);

    for (let k = 0; k < iters; k++) {
      const ck = c / Math.pow(k + 1, gamma);
      for (let i = 0; i < 6; i++) {
        deltas[i] = Math.random() > 0.5 ? 1 : -1;
        highArgs[i] = values[i] + ck * deltas[i];
        lowArgs[i] = values[i] - ck * deltas[i];
      }

      const lossDiff = this.loss(highArgs) - this.loss(lowArgs);
      for (let i = 0; i < 6; i++) {
        const g = lossDiff / (2 * ck) * deltas[i];
        const ak = a[i] / Math.pow(A + k + 1, alpha);
        values[i] = fix(values[i] - ak * g, i);
      }

      const loss = this.loss(values);
      if (loss < bestLoss) {
        best = values.slice(0);
        bestLoss = loss;
      }
    }
    return { values: best, loss: bestLoss };

    function fix(value, idx) {
      let max = 100;
      if (idx === 2 /* saturate */) {
        max = 7500;
      } else if (idx === 4 /* brightness */ || idx === 5 /* contrast */) {
        max = 200;
      }

      if (idx === 3 /* hue-rotate */) {
        if (value > max) {
          value %= max;
        } else if (value < 0) {
          value = max + value % max;
        }
      } else if (value < 0) {
        value = 0;
      } else if (value > max) {
        value = max;
      }
      return value;
    }
  }

  loss(filters) {
    // Argument is array of percentages.
    const color = this.reusedColor;
    color.set(0, 0, 0);

    color.invert(filters[0] / 100);
    color.sepia(filters[1] / 100);
    color.saturate(filters[2] / 100);
    color.hueRotate(filters[3] * 3.6);
    color.brightness(filters[4] / 100);
    color.contrast(filters[5] / 100);

    const colorHSL = color.hsl();
    return (
      Math.abs(color.r - this.target.r) +
      Math.abs(color.g - this.target.g) +
      Math.abs(color.b - this.target.b) +
      Math.abs(colorHSL.h - this.targetHSL.h) +
      Math.abs(colorHSL.s - this.targetHSL.s) +
      Math.abs(colorHSL.l - this.targetHSL.l)
    );
  }

  css(filters) {
    function fmt(idx, multiplier = 1) {
      return Math.round(filters[idx] * multiplier);
    }
    return `filter: invert(${fmt(0)}%) sepia(${fmt(1)}%) saturate(${fmt(2)}%) hue-rotate(${fmt(3, 3.6)}deg) brightness(${fmt(4)}%) contrast(${fmt(5)}%);`;
  }
}

function hexToRgb(hex) {
  // Expand shorthand form (e.g. "03F") to full form (e.g. "0033FF")
  const shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i;
  hex = hex.replace(shorthandRegex, (m, r, g, b) => {
    return r + r + g + g + b + b;
  });

  const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
  return result
    ? [
      parseInt(result[1], 16),
      parseInt(result[2], 16),
      parseInt(result[3], 16),
    ]
    : null;
}

/* $(document).ready(() => {
  $('button.execute').click(() => {
    const rgb = hexToRgb($('input.target').val());
    if (rgb.length !== 3) {
      alert('Invalid format!');
      return;
    }

    const color = new Color(rgb[0], rgb[1], rgb[2]);
    const solver = new Solver(color);
    const result = solver.solve();

    let lossMsg;
    if (result.loss < 1) {
      lossMsg = 'This is a perfect result.';
    } else if (result.loss < 5) {
      lossMsg = 'The is close enough.';
    } else if (result.loss < 15) {
      lossMsg = 'The color is somewhat off. Consider running it again.';
    } else {
      lossMsg = 'The color is extremely off. Run it again!';
    }

    $('.realPixel').css('background-color', color.toString());
    $('.filterPixel').attr('style', result.filter);
    $('.filterDetail').text(result.filter);
    $('.lossDetail').html(`Loss: ${result.loss.toFixed(1)}. <b>${lossMsg}</b>`);
  });
});
 */

function layercolour(classdata){
  $('.color_image'+classdata+'.selected').siblings('#select_color').css('display','none');
  $('.color_image'+classdata+'.selected').removeClass('selected');
}

function preview_layer_color(id){
  const rgb = hexToRgb($('.color_image'+id+'.selected').attr('data-color'));
        
        if (rgb.length !== 3) {
        alert('Invalid format!');
        return;
        }
        const color = new Color(rgb[0], rgb[1], rgb[2]);
        const solver = new Solver(color);
        const result = solver.solve();

        //$("#previewbox").find('.overlay'+id).attr('style', result.filter);
       return result; 
}



$(document).ready(function(){
   
    $('.pattern_image').click(function() {

      $('.pattern_image.selected').find('#select_image').css('display','none');
      $('.pattern_image.selected').removeClass('selected');
      $('.pattern_image.selected').find("layer_image1").attr('src','');
      $('.pattern_image.selected').find("layer_image2").attr('src','');
      $('.pattern_image.selected').find("layer_image3").attr('src','');
      $('.pattern_image.selected').find("layer_image4").attr('src','');

      layercolour(1);
      layercolour(2);
      layercolour(3);
      layercolour(4);

      $('.background_image.selected').find('#select_background').css('display','none');
      $('.background_image.selected').removeClass('selected');
      $(".layer1").addClass('active');
      $(".layer2").removeClass('active');
      $(".layer3").removeClass('active');
      $(".layer4").removeClass('active');
      $("#layer1").addClass('active');
      $("#layer2").removeClass('active');
      $("#layer3").removeClass('active');
      $("#layer4").removeClass('active');

      $(".color-overlay1").css('filter','');
      $(".color-overlay2").css('filter','');
      $(".color-overlay3").css('filter','');
      $(".color-overlay4").css('filter','');
      
      $(this).toggleClass('selected');
      $(this).find('#select_image').show();
      
      var pattern_id=$('.pattern_image.selected').attr('id');
      var url=$('.pattern_image.selected').attr('layer-data');

       $.ajax({
        type: "get",
        url:url,
        data: {pattern_id : pattern_id},
        cache: false,
        dataType:'json',
        success: function(data)
        {
          if(data.layer1){
            var src= $('.pattern_image.selected').find("#layer_image1").attr("src");
            $(".color-overlay1").attr('src',src);   
          }
          if(data.layer2){
            $(".layer2").show();
            var src= $('.pattern_image.selected').find("#layer_image2").attr("src");
            $("#color-previewbox").find('.color-overlay2').show();
            $(".color-overlay2").attr('src',src);   
          }
          else{
            $(".layer2").hide();
            $("#color-previewbox").find('.color-overlay2').css('display','none');
            $(".color-overlay2").attr('src','');
          }

          if(data.layer3){
            $(".layer3").show();
            var src= $('.pattern_image.selected').find("#layer_image3").attr("src");
            $("#color-previewbox").find('.color-overlay3').show();
            $(".color-overlay3").attr('src',src); 
          }
          else{
            $(".layer3").hide();
            $("#color-previewbox").find('.color-overlay3').css('display','none');
            $(".color-overlay3").attr('src','');
          }

          if(data.layer4){
            $(".layer4").show();
            var src= $('.pattern_image.selected').find("#layer_image4").attr("src");
            $("#color-previewbox").find('.color-overlay4').show();
            $(".color-overlay4").attr('src',src); 
          }
          else{
            $(".layer4").hide();
            $("#color-previewbox").find('.color-overlay4').css('display','none');
            $(".color-overlay4").attr('src','');
          }

        }        
      }); 
      
    });

    $(".color").click(function(){
      $(this).attr('href','#3');
      var src= $('.pattern_image.selected').find("#pattern_image").attr("src");

      if(!src){
          alert("Pattern image must select.");
          $(this).attr('href','#2');
      }

          
    });


    $('.color_image1').click(function() {
        layercolour(1);
        $(this).toggleClass('selected');
        $(this).siblings('#select_color').show();
        var result=preview_layer_color(1);
        $(".color-overlay1").attr('style',result.filter);
    });

    $('.color_image2').click(function() {
      layercolour(2);
      $(this).toggleClass('selected');
      $(this).siblings('#select_color').show();
      var result=preview_layer_color(2);
      $(".color-overlay2").attr('style',result.filter);
    });

    $('.color_image3').click(function() {
      layercolour(3);
      $(this).toggleClass('selected');
      $(this).siblings('#select_color').show();
      var result=preview_layer_color(3);
      $(".color-overlay3").attr('style',result.filter);
    });

    $('.color_image4').click(function() {
      layercolour(4);
      $(this).toggleClass('selected');
      $(this).siblings('#select_color').show();
      var result=preview_layer_color(4);
      $(".color-overlay4").attr('style',result.filter);
    });

    $(".background").click(function(){
      $(this).attr('href','#4');
        var src1= $(".pattern_image.selected").find("#layer_image1").attr('src');
        var src2= $(".pattern_image.selected").find("#layer_image2").attr('src');
        var src3= $(".pattern_image.selected").find("#layer_image3").attr('src');
        var src4= $(".pattern_image.selected").find("#layer_image4").attr('src');
        
        if(src1!=''){
          if(!$('.color_image1.selected').attr('data-color')){
            alert("Colour must select.");
            $(this).attr('href','#3');
          }
        }  
        if(src2!=''){
          if(!$('.color_image2.selected').attr('data-color')){
            alert("Colour2 must select.");
            $(this).attr('href','#3');
          }
        }
        if(src3!=''){
          if(!$('.color_image3.selected').attr('data-color')){
            alert("Colour3 must select.");
            $(this).attr('href','#3');
          }
        }
        if(src4!=''){
          if(!$('.color_image4.selected').attr('data-color')){
            alert("Colour4 must select.");
            $(this).attr('href','#3');
          }
        }
    
    })
     
    $('.background_image').click(function() {
      $('.background_image.selected').find('#select_background').css('display','none');
      $('.background_image.selected').removeClass('selected');
      
      $(this).toggleClass('selected');
      $(this).find('#select_background').show();
      
    });


      
    $('.preview').click(function() {
        
        $("#sample").hide();
        $("#nosample").show();

        $(this).attr('href','#5');
        var bgsrc= $('.background_image.selected').find("#background_image").attr("src");
        // var src= $('.pattern_image.selected').find("#pattern_image").attr("src");
        var src1= $(".pattern_image.selected").find("#layer_image1").attr('src');
        var src2= $(".pattern_image.selected").find("#layer_image2").attr('src');
        var src3= $(".pattern_image.selected").find("#layer_image3").attr('src');
        var src4= $(".pattern_image.selected").find("#layer_image4").attr('src');

       
        if(!bgsrc){
          alert("Background image must select.");
          $(this).attr('href','#4');
        }

        $('.save_pattern_a').show();
        $("#order_cfa").css('display','none');
        //$('#previewbox').css('background-color', color.toString());
        
        
        $("#previewbox").find('.background-image').attr('src',bgsrc);
        $("#previewbox").find('.overlay1').attr('src',src1);

        if(src2!=''){
          $("#previewbox").find('.overlay2').attr('src',src2);
          var result=preview_layer_color(2);
          $("#previewbox").find('.overlay2').attr('style', result.filter);
        }
        else{
          $("#previewbox").find('.overlay2').attr('src','img/blank.png');
          $("#previewbox").find('.overlay2').css('display','none');
        }

        if(src3!=''){
          $("#previewbox").find('.overlay3').attr('src',src3);
          var result=preview_layer_color(3);
          $("#previewbox").find('.overlay3').attr('style', result.filter);
        }
        else{
          $("#previewbox").find('.overlay3').attr('src','img/blank.png');
          $("#previewbox").find('.overlay3').css('display','none');
        }

        if(src4!=''){
          $("#previewbox").find('.overlay4').attr('src',src4);
          var result=preview_layer_color(4);
          $("#previewbox").find('.overlay4').attr('style', result.filter);
        }
        else{
          $("#previewbox").find('.overlay4').attr('src','img/blank.png');
          $("#previewbox").find('.overlay4').css('display','none');
        }
        //$("#previewbox").find('.overlay-image').attr('style', result.filter);
        
        var result=preview_layer_color(1);
        
        $("#previewbox").find('.overlay1').attr('style', result.filter);

       /*  const rgb = hexToRgb($('.color_image1.selected').attr('data-color'));
        
        if (rgb.length !== 3) {
        alert('Invalid format!');
        return;
        }
        const color = new Color(rgb[0], rgb[1], rgb[2]);
        const solver = new Solver(color);
        const result = solver.solve();

        $("#previewbox").find('.overlay1').attr('style', result.filter); */
        
        
    }); 
    
    var index=0;

    $('.save_pattern').click(function() {
       
        $("#sample").show();
        $("#nosample").hide();

      //To add hidden fields in form to pass data
        var pattern_id=$('.pattern_image.selected').attr('id');
        var background_id=$('.background_image.selected').attr('id');
         
        //To list combined images

        var bgsrc= $('.background_image.selected').find("#background_image").attr("src");
        //var src= $('.pattern_image.selected').find("#pattern_image").attr("src");
        var src1= $(".pattern_image.selected").find("#layer_image1").attr('src');
        var src2= $(".pattern_image.selected").find("#layer_image2").attr('src');
        var src3= $(".pattern_image.selected").find("#layer_image3").attr('src');
        var src4= $(".pattern_image.selected").find("#layer_image4").attr('src');

        if(src2!=''){
          var result=preview_layer_color(2);
          var color_id=$('.color_image2.selected').attr('id');
          var layerhtml2="<img class='overlay-image overlay2' src="+src2+" style='"+result.filter+";height:100px;width:80%;'><input type='hidden' name='color["+index+"][1]' value='"+color_id+"'>";
        }
        else{
          var layerhtml2='';
        }

        if(src3!=''){
          var result=preview_layer_color(3);
          var color_id=$('.color_image3.selected').attr('id');
          var layerhtml3="<img class='overlay-image overlay3' src="+src3+" style='"+result.filter+";height:100px;width:80%;'><input type='hidden' name='color["+index+"][2]' value='"+color_id+"'>";

        }
        else{
          var layerhtml3='';
        }

        if(src4!=''){
          var result=preview_layer_color(4);
          var color_id=$('.color_image4.selected').attr('id');
          var layerhtml4="<img class='overlay-image overlay4' src="+src4+" style='"+result.filter+";height:100px;width:80%;'><input type='hidden' name='color["+index+"][3]' value='"+color_id+"'>";

        }
        else{
          var layerhtml4='';
        }
        //$("#previewbox").find('.overlay-image').attr('style', result.filter);
        
        var result=preview_layer_color(1);
        var color_id=$('.color_image1.selected').attr('id');

      
        var html="<div class='col-md-2 image-container image_list' style='margin-bottom:10px;'><div style='margin-right:2px;background-color:#fff;'><div class='row'><div class='col-md-12'> <img class='background-image' src="+bgsrc+" style='height:100px;width:100%;'><img class='overlay-image overlay1' src="+src1+" style='"+result.filter+";height:100px;width:80%;'><input type='hidden' name='color["+index+"][0]' value='"+color_id+"'>"+layerhtml2+layerhtml3+layerhtml4+"<div class='image_delete' style='position:absolute;top:0px;left:130px;background-color:#fff;width:20px;'><b>x</b></div></div><div class='row'><div class='col-md-12'  style=''><b style='background-color:#fff;height:40px;'>Quantity</b>&nbsp;<input type='number' style='width:50px;color:#000;border:1px solid #000;text-align:left;' name='quantity["+index+"]' value='1'><input type='hidden' name='pattern["+index+"]' value='"+pattern_id+"'><input type='hidden' name='background["+index+"]' value='"+background_id+"'><input type='hidden' class='image_name_field' name='image_name' value=''></div></div></div></div></div>";
        
        $(".saved_patterns").append(html);
        $(this).parent().siblings("#order_cfa").show();
        $('.save_pattern_a').hide();


      index++;
      var url=$(this).attr("data-url");
      var divToConvert = document.getElementById('previewbox');
          
          // Use dom-to-image to capture the div as a data URL
          domtoimage.toPng(divToConvert)
              .then(function(dataURL) {
                //sending data to server
                  return $.ajax({
                      type: 'POST',
                      url : url,     
                      headers: {
                        'Content-Type': 'application/json',
                        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                      },         
                      data: JSON.stringify({ imageData: dataURL }),
                      dataType: 'JSON',
                      //async: true,  //NOT NEEDED
                      success: function(response) {
                          console.log(response);
                          //alert(response.message);
                          if(response.message!=''){
                            $("#sample").hide();
                            $("#nosample").show();
                            $("#nosample h2").text(response.message);
                          }
                          var id=response.id;
                         // alert(id);
                          var hiddenField = $(".saved_patterns").find(`.image_name_field[name='image_name']`);
		                    console.log('Hidden field:', hiddenField); // Debug hidden field selection
		                    hiddenField.val(`preview${id}.jpeg`);


                          //$(".wallpaper").css("background-image","url('Uploads/previews/first_service.jpg')");
                          $(".wallpaper").css("background-image","url('Uploads/previews/preview"+id+".jpeg')");
                          //$(".wallpaper").css("background-repeat","round");
                          $(".wallpaper").css("background-repeat", "repeat");

                            $(".image_id").val('preview'+id+'.jpeg'); 
                              var id1=response.id1;
                             $(".image_name_new").val('preview'+id1+'.jpeg');

                          
                           // var id1=response.id1;
                           // $(".image__new_id").val(id1);

                          

                      }
                  });
               
                                
              });

    });

   

    $("body").on("click","#btn_login",function(){
      $("#frm_login").validate({
        // In 'rules' user have to specify all the
        // constraints for respective fields
        rules: {
            username: "required",
            password: {
              required: true,
            },
        },
        // In 'messages' user have to specify message as per rules
        messages: {
            username: " Please enter your email/mobile",
            password: {
              required: " Please enter Your password",
            },
        },
        submitHandler: function(form) {
          $.ajax({
              url: form.action,
              type: form.method,
              data: $(form).serialize(),
              dataType:'json',
              success: function(response) {
                if(response.user){
                  $("#user_id").val(response.user['id']);
                  $(".user_id").val(response.user['id']);
                  if($("#page").attr('page')=='myOrders'){
                    $('#commonModal').modal('toggle');
                    window.location.href = 'myOrders';
                  }
                  else{
                    $("#shipping_details").show();
                      $("#user_id").val(response.user.id);
                    $("#nname").val(response.user.name);

                    $("#company_name").val(response.user.company_name);
                    $("#address1").val(response.user.address1);
                    $("#address2").val(response.user.address2);
                    $("#city").val(response.user.city);
                    $("#state").val(response.user.state);
                    $("#country").val(response.user.country);
                    $("#contact_no").val(response.user.contact_no);

                  }
                  $("#login").hide();
                  $("#register").hide();
                }
                if(response.errormessage){
                  $("#frm_login_success").text('');
                  $("#frm_login_error").text(response.errormessage);
                }
               
              }            
          });
        }
        
      });
    });

    $("body").on("click","#btn_register",function(){
      $("#frm_register").validate({
        // In 'rules' user have to specify all the
        // constraints for respective fields
        rules: {
            name: "required",
            email: "required",
            mobile: "required",
              company_name: "required",
            address1: "required",
             city: "required",
            state: "required",
            country: "required",
            password: {
              required: true,
            },
            cpassword: {
              required: true,
             // For checking both passwords are same or not
              equalTo: "#reg_password"
            },
          
           //address2 : "required",
           
            contact_no: {
              required: true,
            },
            


              
        },
        // In 'messages' user have to specify message as per rules
        messages: {
            name: " Please enter your Name",
            email: " Please enter your Email",
            mobile: " Please enter your Mobile",
             company_name: "Please enter Company Name",
            address1: "Please enter Address Line1",
             city: "Please enter City",
            state: "Please enter State",
            country: "Please enter Country",
            password: {
              required: " Please enter Your password",
            },
            cpassword: {
              required: " Please enter a password",
              equalTo: " Please enter the same password as above"
            },
           // address2: "Please enter Address Line2",
            contact_no: {
              required: "Please enter Contact Number",
            },
              
              
             
        },
        submitHandler: function(form) {
          $.ajax({
              url: form.action,
              type: form.method,
              data: $(form).serialize(),
              dataType:'json',
              success: function(response) {
                  $('#frm_register_success').text(response.message);
                   window.location.href = 'https://alogaa.com/test/texind_web/public/';

              }            
          });
        }
        
      });
    });

    //  $("body").on("click","#user_data",function(){
    //   $("#user_update").validate({
    //     // In 'rules' user have to specify all the
    //     // constraints for respective fields
    //     rules: {
          
    //           company_name: "required",
    //         address1: "required",
    //          city: "required",
    //         state: "required",
    //         country: "required",
           
          
    //        //address2 : "required",
           
    //         contact_no: {
    //           required: true,
    //         },
            


              
    //     },
    //     // In 'messages' user have to specify message as per rules
    //     messages: {
           
    //          company_name: "Please enter Company Name",
    //         address1: "Please enter Address Line1",
    //          city: "Please enter City",
    //         state: "Please enter State",
    //         country: "Please enter Country",
            
    //        // address2: "Please enter Address Line2",
    //         contact_no: {
    //           required: "Please enter Contact Number",
    //         },
              
              
             
    //     },
    //     submitHandler: function(form) {
    //       $.ajax({
    //           url: form.action,
    //           type: form.method,
    //           data: $(form).serialize(),
    //           dataType:'json',
    //           success: function(response) {
    //               $('#frm_register_success').text(response.message);
    //                window.location.href = '/';

    //           }            
    //       });
    //     }
        
    //   });
    // });

    $("body").on("click","#btn_place_order",function(){
      $("#frm_place_order").validate({
        // In 'rules' user have to specify all the
        // constraints for respective fields
        rules: {
            name: "required",
            company_name: "required",
            address1: "required",
           //address2 : "required",
            city: "required",
            state: "required",
            country: "required",
            contact_no: {
              required: true,
            },
            
              
        },
        // In 'messages' user have to specify message as per rules
        messages: {
            name: " Please enter your Name",
            company_name: "Please enter Company Name",
            address1: "Please enter Address Line1",
           // address2: "Please enter Address Line2",
            city: "Please enter City",
            state: "Please enter State",
            country: "Please enter Country",
            contact_no: {
              required: "Please enter Contact Number",
            },
              
             
        },
        submitHandler: function(form) {
          
          var shippingForm=$("#frm_place_order").serialize();
          //var jsonshippingForm=JSON.stringify(shippingForm);
          
          var itemsForm=$("#order_item_form").serialize();
          //var jsonitemsForm=JSON.stringify(itemsForm);
          //console.log(itemsForm);
          $.ajaxSetup({
            headers: {
               'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
          });
          $.ajax({
              url: form.action,
              type: form.method,
              data: {'shippingForm':shippingForm,'itemsForm':itemsForm},
              dataType:'json',
              success: function(response) {
                  $("#place_order_success").text(response.message);
                  $("#shipping_details").hide();
                  $("#login").hide();
                  $("#register").hide();
                  window.location.href = 'myOrders';
              }            
          });
        }
        
      });
     
    });


    $("body").on("click","#modal_close",function(){
      
        //window.location.reload(true); 
        //window.location.href = 'myOrders';
       
    });

    $("body").on("click",".image_delete",function(){
        //var imageclass=$(this).parent().attr("image-class");
        $(this).parent().parent().parent().parent().remove(".image_list");
        //$("."+imageclass).remove();
        
    });

    

});