File: /var/www/vhost/disk-apps/agile-selling-wpb/resources/views/discounts/editDiscount.blade.php
@extends('modules.head') @section('contenido')
<link rel="stylesheet" href="{{ asset('js/timepicker/bootstrap-timepicker.min.css') }}"/>
<h3 ><a class="ruta" class="" href="{{url('/discounts')}}">{{ Lang::get('messages.screen_discounts_tag1')}} </a> <span class="separador-ruta">|</span><a class="ruta" class="">{{ Lang::get('messages.screen_discounts_tag48')}} </a> </h3>
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ Lang::get('messages.screen_discounts_tag1')}}</h3>
<!-- /.box-tools -->
</div>
<!-- /.box-header -->
<div class="box-body" >
@if($discount->discount_type_id == 1)
<form role="form" id="editDiscount" data-toggle="validator">
<div class="row">
<div class="col-xs-4">
<div class="form-group">
<label for="name">{{ Lang::get('messages.screen_discounts_tag6')}} </label>
<input type="text" class="form-control" value="{{$discount->name}}" name="name" id="name" required>
</div>
</div>
<div class="col-xs-4">
<div class="form-group">
<label for="price_discount">{{ Lang::get('messages.screen_discounts_tag16')}} </label>
<input type="number" class="form-control" value="{{$discount->price_discount}}" name="price_discount" id="price_discount">
</div>
</div>
<div class="col-xs-4">
<div class="form-group">
<label for="percentage_discount">{{ Lang::get('messages.screen_discounts_tag17')}} </label>
<input type="number" class="form-control" value="{{$discount->percentage_discount}}" name="percentage_discount" id="percentage_discount">
</div>
</div>
</div>
<div class="row">
<div class="col-1 col-md-1">
<div class="row">
<div class="col-xs-12">
<label for="days_register_discount_delivery">{{ Lang::get('messages.screen_parameters_tag18')}}</label>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<div class="form-group">
<input type="number" class="form-control" name="days_register_discount_delivery" id="days_register_discount_delivery" placeholder="" value="{{$discount->days_register_discount_delivery}}" required>
</div>
</div>
</div>
</div>
<div class="col-4 col-md-4">
<div class="row">
<div class="col-xs-12">
<label for="discount_global_shipping">{{ Lang::get('messages.screen_parameters_tag8')}} </label>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<div class="form-group">
<input type="number" class="form-control" maxlength="100" name="discount_global_shipping" id="discount_global_shipping" value="{{$discount->discount_global_shipping}}" placeholder="">
</div>
</div>
</div>
</div>
</div>
<button onClick="editDiscount()" data-id="{{$discount->id}}" type-id="{{$discount->discount_type_id}}" id="btn-edit-discount" class="btn btnBox pull-right ">{{ Lang::get('messages.screen_discounts_tag49')}}</button>
<button type="button" class="btn btnBox pull-right displayNone" id="spinnerButton">
<i class="fa fa-spinner fa-spin"></i>
</button>
<button type="button" class="btn btn-default pull-right btnCancel" >
<a href="{{url('/discounts')}}">{{ Lang::get('messages.screen_discounts_tag50')}} </a>
</button>
</form>
@endif
@if($discount->discount_type_id > 1)
<form role="form" id="editDiscount" data-toggle="validator">
<div class="row">
<div class="col-3 col-md-3">
<div class="form-group">
<label for="name">{{ Lang::get('messages.screen_discounts_tag6')}} </label>
<input type="text" class="form-control" value="{{$discount->name}}" name="name" id="name" required>
</div>
</div>
<div class="col-3 col-md-3">
<div class="form-group">
<label for="max_winners">{{ Lang::get('messages.screen_discounts_tag11')}} </label>
<input type="number" class="form-control" value="{{$discount->max_winners}}" name="max_winners" id="max_winners" required>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label for="message_to_user">{{ Lang::get('messages.screen_discounts_tag10')}} </label>
<input type="text" class="form-control" value="{{$discount->message_to_user}}" name="message_to_user" id="message_to_user" required>
</div>
</div>
</div>
<div class="row">
<div class="col-3 col-md-3">
<div class="form-group">
<label for="start_date">{{ Lang::get('messages.screen_discounts_tag12')}}</label>
<div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control pull-right" value="" name="start_date" id="start_date" required>
</div>
</div>
</div>
<div class="col-3 col-md-3">
<div class="bootstrap-timepicker">
<div class="form-group">
<label for="start_hour">{{ Lang::get('messages.screen_discounts_tag13')}}</label>
<div class="input-group">
<div class="input-group-addon">
<i class="fa fa-clock-o"></i>
</div>
<input type="text" class="form-control timepicker" value="" name="start_hour" id="start_hour" required>
</div>
</div>
</div>
</div>
<div class="col-3 col-md-3">
<div class="form-group">
<label for="limit_date">{{ Lang::get('messages.screen_discounts_tag14')}}</label>
<div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control pull-right" value="" name="limit_date" id="limit_date" required>
</div>
</div>
</div>
<div class="col-3 col-md-3">
<div class="bootstrap-timepicker">
<div class="form-group">
<label for="limit_hour">{{ Lang::get('messages.screen_discounts_tag15')}}</label>
<div class="input-group">
<div class="input-group-addon">
<i class="fa fa-clock-o"></i>
</div>
<input type="text" class="form-control timepicker" value="" name="limit_hour" id="limit_hour" required>
</div>
</div>
</div>
</div>
</div>
@if ($discount->discount_type_id == 10)
<div class="row">
<div class="col-xs-6">
<div class="form-group">
<label for="apply_value">{{ Lang::get('messages.screen_discounts_tag56')}} </label>
<select class="form-control" name="apply_value" id="apply_value" required>
<option disabled> Seleccionar </option>
<option value="0" {{ (!$discount->apply_value) ? "selected" : "" }}> Al valor del domicilio </option>
<option value="1" {{ ($discount->apply_value) ? "selected" : "" }} > Al valor del producto </option>
</select>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label for="category_id">{{ Lang::get('messages.screen_discounts_tag57')}} </label>
<select class="form-control" name="category_id" id="category_id" required>
<option disabled> Seleccionar </option>
@foreach($categories as $category)
@if($category->id == $discount->category_id)
<option value="{{$category->id}}" selected="selected">{{$category->name}}</option>
@else
<option value="{{$category->id}}">{{$category->name}}</option>
@endif
@endforeach
</select>
</div>
</div>
</div>
@endif
<div class="row">
<div class="col-xs-6">
<div class="form-group">
<label for="is_multiple_redeem">{{ Lang::get('messages.screen_discounts_tag18')}} </label>
<select class="form-control" name="is_multiple_redeem" id="is_multiple_redeem" required>
<option disabled> Seleccionar </option>
<option value="1" {{ ($discount->is_multiple_redeem) ? "selected" : "" }} > Si </option>
<option value="0" {{ (!$discount->is_multiple_redeem) ? "selected" : "" }}> No </option>
</select>
</div>
</div>
<div class="col-xs-6">
<div class="form-group">
<label for="is_cumulative_another_discounts">{{ Lang::get('messages.screen_discounts_tag19')}} </label>
<select class="form-control" name="is_cumulative_another_discounts" id="is_cumulative_another_discounts" required>
<option disabled> Seleccionar </option>
<option value="1" {{ ($discount->is_cumulative_another_discounts) ? "selected" : "" }} > Si </option>
<option value="0" {{ (!$discount->is_cumulative_another_discounts) ? "selected" : "" }}> No </option>
</select>
</div>
</div>
</div>
<div class="row {{ ($discount->discount_type_id == 6 ) ? 'displayNone' : '' }}">
<div class="col-xs-4 {{ ($discount->discount_type_id == 7 ) ? 'displayNone' : '' }}">
<div class="form-group">
<label class="fontSize13" for="value_for_win">{{ Lang::get('messages.screen_discounts_tag7')}} </label>
<input type="number" class="form-control" value="{{$discount->value_for_win}}" name="value_for_win" id="value_for_win">
</div>
</div>
<div class="col-xs-4">
<div class="form-group">
<label for="price_discount">{{ Lang::get('messages.screen_discounts_tag16')}} </label>
<input type="number" class="form-control" value="{{$discount->price_discount}}" name="price_discount" id="price_discount">
</div>
</div>
<div class="col-xs-4">
<div class="form-group">
<label for="percentage_discount">{{ Lang::get('messages.screen_discounts_tag17')}} </label>
<input type="number" class="form-control" value="{{$discount->percentage_discount}}" name="percentage_discount" id="percentage_discount">
</div>
</div>
</div>
@if($discount->discount_type_id == 4)
<div class="row">
<div class="col-xs-4">
<div class="form-group">
<label for="code_coupon">{{ Lang::get('messages.screen_discounts_tag20')}} </label>
<input type="text" class="form-control" value="{{$discount->code_coupon}}" name="code_coupon" id="code_coupon" required>
</div>
</div>
</div>
@endif
@if($discount->discount_type_id == 5 || $discount->discount_type_id == 6)
<div class="row">
<div class="col-3 col-md-3 col-xs-offset-4">
<div class="form-group displayGrid">
<label for="productRequirement">{{ Lang::get('messages.screen_discounts_tag21')}}</label>
<select class="form-control select2 widthSelectDiscount" name="productRequirement" id="productRequirement">
<option disabled selected="selected"> Seleccionar productos </option>
@foreach($products as $product)
<option value="{{$product->id}}" name="{{$product->name}}" plu="{{$product->plu}}" price="{{$product->price}}">{{$product->plu}} - {{$product->name}}</option>
@endforeach
</select>
</div>
</div>
<div class="col-3 col-md-3">
<div class="form-group">
<div class="input-group-btn">
<input type="text" class="displayNone" value="" name="arrayProductsRequirement" id="arrayProductsRequirement">
<button type="button" class="btn btn-success buttonAddProductDiscount" id="buttonAddProductRequirement"><i class="fa fa-plus"></i></button>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ Lang::get('messages.screen_discounts_tag51')}}</h3>
</div>
<!-- /.box-header -->
<div class="box-body">
<table class="table table-bordered">
<thead>
<tr>
<th>#</th>
<th>{{ Lang::get('messages.screen_discounts_tag23')}}</th>
<th>{{ Lang::get('messages.screen_discounts_tag24')}}</th>
<th>{{ Lang::get('messages.screen_discounts_tag25')}}</th>
<th>{{ Lang::get('messages.screen_discounts_tag5')}}</th>
</tr>
</thead>
<tbody id="bodyTableRequirement">
</tbody>
</table>
</div>
<!-- /.box-body -->
<div class="box-footer clearfix">
<ul class="pagination pagination-sm no-margin pull-right totalPrice">
<p>Total:    </p><span id="totalPriceRequirement"></span>
</ul>
</div>
</div>
</div>
</div>
@endif
@if($discount->discount_type_id == 6 || $discount->discount_type_id == 7 || $discount->discount_type_id == 9)
<div class="row">
<div class="col-3 col-md-3 col-xs-offset-4">
<div class="form-group displayGrid">
<label for="productGift">{{ Lang::get('messages.screen_discounts_tag52')}}</label>
<select class="form-control select2 widthSelectDiscount" name="productGift" id="productGift">
<option disabled selected="selected"> Seleccionar producto </option>
@foreach($products as $product)
<option value="{{$product->id}}" name="{{$product->name}}" plu="{{$product->plu}}" price="{{$product->price}}">{{$product->plu}} - {{$product->name}}</option>
@endforeach
</select>
</div>
</div>
<div class="col-3 col-md-3">
<div class="form-group">
<div class="input-group-btn">
<input type="text" class="displayNone" value="" name="arrayProductsGift" id="arrayProductsGift">
<button type="button" class="btn btn-success buttonAddProductDiscount" id="buttonAddProductGift"><i class="fa fa-plus"></i></button>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ Lang::get('messages.screen_discounts_tag52')}}</h3>
</div>
<!-- /.box-header -->
<div class="box-body">
<table class="table table-bordered">
<thead>
<tr>
<th>#</th>
<th>{{ Lang::get('messages.screen_discounts_tag23')}}</th>
<th>{{ Lang::get('messages.screen_discounts_tag24')}}</th>
<th>{{ Lang::get('messages.screen_discounts_tag25')}}</th>
<th>{{ Lang::get('messages.screen_discounts_tag5')}}</th>
</tr>
</thead>
<tbody id="bodyTableGift">
</tbody>
</table>
</div>
<!-- /.box-body -->
<div class="box-footer clearfix">
<ul class="pagination pagination-sm no-margin pull-right totalPrice">
<p>Total:    </p><span id="totalPriceGift"></span>
</ul>
</div>
</div>
</div>
</div>
@endif
<button onClick="editDiscount()" data-id="{{$discount->id}}" type-id="{{$discount->discount_type_id}}" id="btn-edit-discount" class="btn btnBox pull-right">{{ Lang::get('messages.screen_discounts_tag49')}}</button>
<button type="button" class="btn btnBox pull-right displayNone" id="spinnerButton">
<i class="fa fa-spinner fa-spin"></i>
</button>
<button type="button" class="btn btn-default pull-right btnCancel" >
<a href="{{url('/discounts')}}">{{ Lang::get('messages.screen_discounts_tag50')}} </a>
</button>
{{ csrf_field() }}
</form>
@endif
</div>
<!-- /.box-body -->
</div>
<script src="{{ asset('js/jQuery/jquery-2.2.3.min.js') }}"></script>
<script src="{{ asset('js/discounts.js') }}"></script>
<script src="{{ asset('js/bootstrap/js/bootstrap.min.js') }}"></script>
<!-- plugin para la hora -->
<script src="{{ asset('js/datetimepicker/moment.min.js') }}"></script>
<script src="{{ asset('js/datetimepicker/bootstrap-datetimepicker.min.js') }}"></script>
<script src="{{ asset('js/timepicker/bootstrap-timepicker.min.js') }}"></script>
<script type="text/javascript">
$(document).ready(function () {
$.fn.datepicker.dates['en'] = {
days: ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'],
daysShort: ['Dom','Lun','Mar','Mié','Juv','Vie','Sáb'],
daysMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
months: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'],
monthsShort: ['Ene','Feb','Mar','Abr', 'May','Jun','Jul','Ago','Sep', 'Oct','Nov','Dic'],
today: "Hoy",
clear: "Clear",
format: "yyyy-mm-dd",
titleFormat: "MM yyyy", /* Leverages same syntax as 'format' */
weekStart: 0
};
$("#start_date").datepicker();
$("#limit_date").datepicker();
$('#percentage_discount').keydown(function () {
$('#price_discount').val('');
});
$('#price_discount').keydown(function () {
$('#percentage_discount').val('');
});
$('.timepicker').timepicker({
showInputs: false
});
$('.select2').select2();
function convertTime24to12(time24) {
var ts = time24;
var H = +ts.substr(0, 2);
var h = (H % 12) || 12;
h = (h < 10)?("0"+h):h; // leading 0 at the left for 1 digit hours
var ampm = H < 12 ? " AM" : " PM";
ts = h + ts.substr(2, 3) + ampm;
return ts;
};
// se extrae la fecha y hora de inicio y fin del descuento
var when_start = '{{$discount->when_start}}';
var start_date = when_start.substring(0, 10);
$('#start_date').val(start_date);
var start_hour = when_start.substring(11, 19);
$('#start_hour').val(convertTime24to12(start_hour));
var when_finish = '{{$discount->when_finish}}';
var limit_date = when_finish.substring(0, 10);
$('#limit_date').val(limit_date);
var limit_hour = when_finish.substring(11, 19);
$('#limit_hour').val(convertTime24to12(limit_hour));
// Create our number formatter.
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 0,
});
$("#buttonAddProductRequirement").click(function (){
addProductToArray();
});
var totalPriceRequirement = 0;
var arrayProductsRequirement = [];
function addProductToArray(){
var product = $("select[name=productRequirement]");
if(product.val()) {
var optionSelect = $("select[name=productRequirement]").find(":selected");
product = {};
product.id = Number(optionSelect.attr("value"));
product.name = optionSelect.attr("name");
product.price = Number(optionSelect.attr("price"));
product.plu = optionSelect.attr("plu");
arrayProductsRequirement = JSON.parse($("#arrayProductsRequirement").val());
var positionProduct = getPositionProduct(arrayProductsRequirement, product.id);
if(positionProduct === -1) {
arrayProductsRequirement = JSON.parse($("#arrayProductsRequirement").val());
arrayProductsRequirement.push(product);
}
}
$("#arrayProductsRequirement").val(JSON.stringify(arrayProductsRequirement));
renderTableProduct();
}
function getPositionProduct(arrayProductsRequirement, idProduct) {
arrayProductsRequirement = JSON.parse($("#arrayProductsRequirement").val());
for(var i = 0; i < arrayProductsRequirement.length; i++) {
if(arrayProductsRequirement[i].id === idProduct) {
return i;
}
}
return -1;
}
function renderTableProduct(){
var table = $("#bodyTableRequirement");
table.html("");
totalPriceRequirement = 0;
arrayProductsRequirement = JSON.parse($("#arrayProductsRequirement").val());
for(var i = 0 ; i < arrayProductsRequirement.length; i++) {
var product = arrayProductsRequirement[i];
var row = "<tr>"
+ "<td>" + (i+1) + "</td>"
+ "<td>" + product.name + "</td>"
+ "<td>" + product.plu + "</td>"
+ "<td>" + formatter.format(product.price) + "</td>"
+ "<td><i class='fa fa-trash iconMini ' id='deleteProductRequirement' delete='" + i + "' data-toggle='tooltip' data-placement='bottom' title='Eliminar' style='cursor:pointer;'></i></td>"
+ "</tr>";
table.append(row);
totalPriceRequirement += product.price;
}
$("i[delete]").click(deleteProduct);
$("#totalPriceRequirement").html(formatter.format(totalPriceRequirement));
}
function deleteProduct(event) {
arrayProductsRequirement = JSON.parse($("#arrayProductsRequirement").val());
var position = $(event.currentTarget).attr("delete");
arrayProductsRequirement.splice(position, 1);
$("#arrayProductsRequirement").val(JSON.stringify(arrayProductsRequirement));
renderTableProduct();
}
$("#buttonAddProductGift").click(function (){
addProductToArrayGift();
});
var totalPriceGift = 0;
var arrayProductsGift = [];
// Codigo para agregar producto obsequio para los descuentos
function addProductToArrayGift(){
arrayProductsGift = JSON.parse($("#arrayProductsGift").val());
if (arrayProductsGift.length > 0) {
return;
}
var product = $("select[name=productGift]");
if(product.val()) {
var optionSelect = $("select[name=productGift]").find(":selected");
product = {};
product.id = Number(optionSelect.attr("value"));
product.name = optionSelect.attr("name");
product.price = Number(optionSelect.attr("price"));
product.plu = optionSelect.attr("plu");
var positionProduct = getPositionProductGift(arrayProductsGift, product.id);
if(positionProduct === -1) {
arrayProductsGift.push(product);
}
}
$("#arrayProductsGift").val(JSON.stringify(arrayProductsGift));
renderTableProductGift();
}
function getPositionProductGift(arrayProductsGift, idProduct) {
arrayProductsGift = JSON.parse($("#arrayProductsGift").val());
for(var i = 0; i < arrayProductsGift.length; i++) {
if(arrayProductsGift[i].id === idProduct) {
return i;
}
}
return -1;
}
function renderTableProductGift(){
var table = $("#bodyTableGift");
table.html("");
totalPriceGift = 0;
arrayProductsGift = JSON.parse($("#arrayProductsGift").val());
for(var i = 0 ; i < arrayProductsGift.length; i++) {
var product = arrayProductsGift[i];
var row = "<tr>"
+ "<td>" + (i+1) + "</td>"
+ "<td>" + product.name + "</td>"
+ "<td>" + product.plu + "</td>"
+ "<td>" + formatter.format(product.price) + "</td>"
+ "<td><i class='fa fa-trash iconMini ' id='deleteProductDiscountGift' deleteGift='" + i + "' data-toggle='tooltip' data-placement='bottom' title='Eliminar' style='cursor:pointer;'></i></td>"
+ "</tr>";
table.append(row);
totalPriceGift += product.price;
}
$("i[deleteGift]").click(deleteProductGift);
$("#totalPriceGift").html(formatter.format(totalPriceGift));
$("#buttonAddProductGift").addClass('disabled');
}
function deleteProductGift(event) {
arrayProductsGift = JSON.parse($("#arrayProductsGift").val());
var position = $(event.currentTarget).attr("deleteGift");
arrayProductsGift.splice(position, 1);
$("#arrayProductsGift").val(JSON.stringify(arrayProductsGift));
renderTableProductGift();
$("#buttonAddProductGift").removeClass('disabled');
}
function loadInitial(){
if ('{{ isset($productsRequirement[0]->id) }}') {
data = '{{ (isset($productsRequirement))?json_encode($productsRequirement) :'' }}';
var arrayProductsRequirement = JSON.parse(data.replace(/"/g,'"'));
var editArrayProductsRequirement = [];
for (var i = 0; i < arrayProductsRequirement.length; i++) {
editArrayProductsRequirement.push(arrayProductsRequirement[i].product);
}
$("#arrayProductsRequirement").val(JSON.stringify(editArrayProductsRequirement));
renderTableProduct();
}
if ('{{ isset($productGift[0]->id) }}') {
dataGift = '{{ (isset($productGift))?json_encode($productGift) :'' }}';
var arrayProductsGift = JSON.parse(dataGift.replace(/"/g,'"'));
var editArrayProductsGift = [];
for (var i = 0; i < arrayProductsGift.length; i++) {
editArrayProductsGift.push(arrayProductsGift[i].product);
}
$("#arrayProductsGift").val(JSON.stringify(editArrayProductsGift));
renderTableProductGift();
}
}
loadInitial();
});
</script>
@endsection