Commit 21118e16 by Jansa Jose

custom quote in admin panel

parent 3a5f4dc2
......@@ -73,5 +73,17 @@ class Bookings extends CI_Controller {
echo json_encode($return_arr);exit;
}
}
public function insertCustomQuote(){
$return_arr = array('status'=>'error');
parse_str($_POST['data'], $output);
if(!isset($output) || empty($output)){
echo json_encode($return_arr);exit;
}
$return_arr = $this->Booking_model->insertCustomQuote($output);
echo json_encode($return_arr);exit;
}
}
?>
\ No newline at end of file
......@@ -143,5 +143,29 @@ class Booking_model extends CI_Model {
$status=$this->db->update('bookings',array('status'=>$status),array('booking_id'=>$booking_id));
return $status;
}
function insertCustomQuote($data){
$custData = array();$total=0;
$book_id = decode_param($data['booking_id']);
unset($data['booking_id']);
for($i=0 ; $i < count($data['description']);$i++){
$custData[$i]['issue_id']=$data['issue_id'][$i];
$custData[$i]['sub_issue_id']=$data['sub_issue_id'][$i];
$custData[$i]['description']=$data['description'][$i];
$custData[$i]['amount']=$data['amount'][$i];
$total += $data['amount'][$i];
}
$book_data = $this->db->get_where('custom_quote',array('booking_id'=>$book_id));
if(!empty($book_data) && $book_data->num_rows() > 0){
$this->db->update('custom_quote',array('custom_service_quote'=>json_encode($custData),'custom_amount'=>$total),array('booking_id'=>$book_id));
$res = array('status'=>'success');
}else{
if($this->db->insert('custom_quote',array('booking_id'=>$book_id,'custom_service_quote'=>json_encode($custData),'custom_amount'=>$total))){
$res = array('status'=>'success');
}
}
return $res;
}
}
?>
......@@ -495,3 +495,15 @@
border-right: 1px solid #e5e5e5;
border-top: 1px solid #e5e5e5;
}
.errInput{
border: 1px solid red !important;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin: 0;
}
......@@ -798,28 +798,37 @@ jQuery('[id="customQuote"]').on('click',function(){
if(issues_selected != ''){
var comma = '';
issueHtml += '<div class="col-md-12" style="padding-top:10px">'+
issueHtml += '<form id="customQuote" role="form" method="post">'+
'<div class="col-md-12" style="padding-top:10px">'+
'<div class="col-md-3"><div class="row"><label>Selected Issue</label></div></div>'+
'<div class="col-md-6"><div class="row"><label>Description</label></div></div>'+
'<div class="col-md-3"><div class="row"><label>Amount</label></div></div>'
'<div class="col-md-3"><div class="row"><label>Amount</label></div></div>'+
'<input type="hidden" name="booking_id" value="'+booking_id+'">'+
'<div class="row">';
jQuery.each(issues_selected, function (index, value) {
issueHtml += '<div class="col-md-12">'
issueHtml += '<div class="col-md-3">';
issueHtml += '<div class="col-md-3 marginTop10">';
issueHtml += comma+' '+value['issue_category']+' ';
issueHtml += '</div>'+
'<div class="col-md-6"><textarea rows="4" cols="60" name="description'+index+'"></textarea></div>'+
'<div class="col-md-3"><input type="number" value="" name="amount_'+index+'"></div>'+
'<div class="col-md-6">'+
'<textarea placeholder="Description" id="description_'+index+'" rows="2" cols="60" name="description[]"></textarea>'+
'</div>'+
'<div class="col-md-3">'+
'<input class="marginTop10" placeholder="Amount" id="amount_'+index+'" type="number" name="amount[]">'+
'</div>'+
'<input type="hidden" name="issue_id[]" value="'+value['issue_id']+'">'+
'<input type="hidden" name="sub_issue_id[]" value="'+value['sub_issue_id']+'">'+
'</div>';
comma = '<br>';
});
issueHtml += '</div>'+
issueHtml += '<input type="hidden" id="array_count" name="count" value="'+issues_selected.length+'">'+
'</div>'+
'</div>'+
'<div class="col-md-12">'+
'<div class="box-footer textCenterAlign">'+
'<button type="submit" onclick="submitCustQuote();" class="btn btn-primary">Submit</button>'+
'<button type="button" onclick="submitCustQuote(event);" class="btn btn-primary">Submit</button>'+
'</div>'+
'</div>';
'</div>'+
'</form>';
}
remModalLoader();
jQuery('[id="modal_content"]').html(issueHtml);
......@@ -839,9 +848,76 @@ jQuery('[id="customQuote"]').on('click',function(){
})
})
function submitCustQuote(){
alert('hi');
console.log('hi');
function submitCustQuote(e){
e.preventDefault();
var count = jQuery('[id="array_count"]').val(), errFlag = '1';
jQuery('[id^="amount_"]').removeClass('errInput');
jQuery('[id^="description_"]').removeClass('errInput');
for (var i=0;i<count;i++){
var descrptn = jQuery('[id="description_'+i+'"]').val();
var amount = jQuery('[id="amount_'+i+'"]').val();
if((descrptn != '' && amount == '') || (descrptn == '' && amount != '')){
if(amount == ''){
jQuery('[id="amount_'+i+'"]').addClass('errInput');
}
if(descrptn == ''){
jQuery('[id="description_'+i+'"]').addClass('errInput');
}
return false;
}
if(descrptn != '' && amount != ''){
errFlag = '0';
}
}
if(errFlag == '1'){
jQuery('[id^="amount_"]').addClass('errInput');
jQuery('[id^="description_"]').addClass('errInput');
return false;
}
var form_data = new FormData();
form_data.append('data',jQuery('[id="customQuote"]').serialize());
if(form_data == '' || form_data==undefined || form_data == 'undefined' || form_data == null || form_data=='null'){
return true;
}
jQuery.ajax({
url : base_url+"Bookings/insertCustomQuote",
type : 'POST',
data : form_data,
async : false,
contentType: false,
processData: false,
success: function(resp){
if(resp == '' || resp == undefined || resp == 'undefined' || resp == null || resp == 'null'){
remModalLoader();
jQuery('[id="modal_content"]').html('Something went wrong, please try again later...!');
return false;
}
var resp_data = jQuery.parseJSON(resp);
if(resp_data['status'] == 'error'){
remModalLoader();
jQuery('[id="modal_content"]').html('Something went wrong, please try again later...!');
return false;
}
else{
remModalLoader();
jQuery('[id="modal_content"]').html('Custom Quote Inserted Successfully.');
return false;
}
},
fail: function(xhr, textStatus, errorThrown){
remModalLoader();
jQuery('[id="modal_content"]').html('Something went wrong, please try again later...!');
},
error: function (ajaxContext) {
remModalLoader();
jQuery('[id="modal_content"]').html('Something went wrong, please try again later...!');
}
})
}
jQuery('[id="showBookinDetails"]').on('click',function() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment