Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {include file='header.tpl'}
- <script type="text/javascript" src="{$base_url}libs/js/date-picker-v5/js/datepicker.js">{literal}{"describedby":"fd-dp-aria-describedby"}{/literal}</script>
- <link href="{$base_url}libs/js/date-picker-v5/css/datepicker.css" rel="stylesheet" type="text/css" />
- <script type="text/javascript" src="{$base_url}libs/js/jquery/jquery-ui-1.8.1.custom.min.js"></script>
- {literal}<style type="text/css">
- #div_links{margin: 15px 0px;padding: 3px 0px;}
- ul.sortable{margin-top: 10px;}
- .sortable, .sortable li{
- list-style-type: none;
- margin: 0;
- padding: 0;
- width: 660px;
- }
- .sortable li, .sortable li:active{
- cursor: move;
- margin: 0px 0px 5px 0px;
- border: 1px solid #dddddd;
- background-color: #f1f1f1;
- height: 32px;
- }
- .sortable li .act{float: left; width: 60px; height: 18px;margin-left:540px;margin-top: -20px;}
- .sortable li table{margin: 4px 10px 0px 4px;}
- .sortable li td a{color: red;cursor: pointer;padding: 1px 3px;font-size: 16pt;font-weight: bold;}
- .sortable li td a:hover{color: #ffffff;background-color: red;}
- div.hotel{
- border: 1px solid #bbb;
- margin-right: 100px;
- margin-bottom: 20px;
- padding: 10px;
- background: #fcfcfc;
- }
- div.hotel:hover{border: 1px solid #000;background: #fbfbfb;}
- .hotel-del{float: right;}
- .hotel-del a{color: red;}
- .hotel-del a:hover{background: red;color: #fff;}
- </style>{/literal}
- <script type="text/javascript" src="{$base_url}libs/js/jquery/tab.js"></script>
- <!-- TinyMCE -->
- <script type="text/javascript" src="{$base_url}libs/js/tiny_mce/tiny_mce.js"></script>
- <script type="text/javascript" src="{$base_url}libs/js/tiny_mce/tiny_mce_init.js"></script>
- <script type="text/javascript" src="{$base_url}libs/js/tiny_mce/plugins/tinybrowser/tb_tinymce.js.php"></script>
- {literal}
- <script type="text/javascript">
- _initTinyMCE({width: '900', height: '300', language: 'en'});
- </script>
- {/literal}
- <!-- /TinyMCE -->
- <link rel="stylesheet" type="text/css" href="{$base_url}libs/js/vTip/css/vtip.css"/>
- <script type="text/javascript" src="{$base_url}libs/js/vTip/vtip-min.js"></script>
- <script type="text/javascript">
- var base_url = '{$base_url}';
- var submitEnable = true;
- var _sel_city = {if isset($form.city)}'{$form.city}'{else}false{/if};
- var firstSelected = true;
- //var count_dates = {if isset($count_dates) && $count_dates!=''}{$count_dates}{else}0{/if};
- var datesArray = [{$dates_arr}];
- var hotelsArray = [{$hotels_arr}];
- var isEdit = false;
- var edit_hid = -1;
- var edit_did = -1;
- var count_hotels = {if isset($count_hotels) && $count_hotels!=''}{$count_hotels}{else}0{/if};
- {literal}
- function changeCountry()
- {
- var country_id = parseInt($('#sel_country').val());
- if (country_id < 1) return;
- submitEnable = false;
- $('#sel_city').attr('disabled', 'disabled');
- $.ajax(
- {
- type: 'get',
- dataType: 'text',
- url: base_url+'main/main/eturas/?req=cake/hotels_booking/country_regions/'+country_id,
- success: function(_data)
- {
- $('#sel_city option').remove();
- $('#sel_city').append('<option value="">-- Select destination --</option>');
- var opts = '';
- var item;
- var item_t;
- if (_data != '"#not_found#"')
- {
- _data = _data.replace('{','').replace('}','').replace(/\"/g,'').split(',');
- var _selItem = _sel_city;
- if (!firstSelected) _selItem = false;
- for(var i in _data)
- {
- item = _data[i].split(':');
- eval('item_t = {"txt": "'+item[1]+'"}');
- if (_selItem != false)
- {
- if (item_t.txt == _selItem)
- {
- $('#sel_city').append('<option value="'+item_t.txt+'" selected="selected">'+item_t.txt+'</option>');
- }
- else
- {
- $('#sel_city').append('<option value="'+item_t.txt+'">'+item_t.txt+'</option>');
- }
- }
- else
- {
- $('#sel_city').append('<option value="'+item_t.txt+'">'+item_t.txt+'</option>');
- }
- }
- submitEnable = true;
- }
- $('#sel_city').attr('disabled', '');
- }
- });
- }
- function changeEmailType()
- {
- document.getElementById('txt_email').disabled = document.getElementById('email_type_global').checked;
- }
- //hotels
- /*----------------------------------------------------------------------------------*/
- function selectHotelImage(base_url, field)
- {
- try{
- var w = window.open(base_url+'libs/js/tinybrowser/tinybrowser.php?type=image&_field='+field, 'img_select_wnd', 'left='+(screen.width-670)/2+', top='+(screen.height-490)/2+', width=670, height=490, menubar=0, toolbar=0, scrollbars=1, status=0, resizable=1');
- } catch(err){}
- }
- function previewHotelImage(field)
- {
- try{
- var url = document.getElementById('txt_'+field).value;
- w = window.open(url, 'img_preview_wnd');
- } catch(err){}
- }
- function deleteHotelImage(field)
- {
- try{
- document.getElementById('img_'+field).src = '';
- document.getElementById('img_'+field).style.display = 'none';
- document.getElementById('txt_'+field).value = '';
- } catch(err){}
- }
- function addHotel()
- {
- var tmp = _createElement( "div", {'id': "hotel_"+count_hotels, 'class': 'hotel', 'style': 'display: none;'});
- document.getElementById('hotelsArea').appendChild(tmp);
- var _tmpd = '<div class="hotel-del"><a href="#" onclick="deleteHotel('+count_hotels+');return false;">delete</a></div>';
- _tmpd += '<span class="req">*</span>Hotel name:<br />';
- _tmpd += '<input type="text" value="" id="txt_title'+count_hotels+'" maxlength="250" style="width: 300px;" class="inputbox" /> <br /><br />';
- _tmpd += 'Image: ';
- _tmpd += '<div style="margin-top: 5px;">';
- _tmpd += '<input type="hidden" value="" id="txt_image'+count_hotels+'" maxlength="255" />';
- _tmpd += '<img src="" style="cursor: url(\'{/literal}{$base_url}{literal}app/admin/views/images/cursor_zoom.gif\'), auto;margin: 3px 0px;border:none; display: none;" id="img_image'+count_hotels+'" alt="" class="selectimg" onclick="previewHotelImage(\'image'+count_hotels+'\');" />';
- _tmpd += '<input type="button" class="button-blue small" value="Select" onclick="selectHotelImage(\'{/literal}{$base_url}{literal}\', \'image'+count_hotels+'\')" /> <input type="button" class="button-blue small" value="Delete" onclick="deleteHotelImage(\'image'+count_hotels+'\')" />';
- _tmpd += '</div><br /><br />';
- _tmpd += '<div style="border-bottom: 1px solid #bbb;padding-bottom: 15px;">';
- _tmpd += '<table id="tbl_addform'+count_hotels+'"><tr>';
- _tmpd += '<td><span class="req">*</span>Date start:<br /><input type="text" id="txt_date_start'+count_hotels+'" o1nchange="alert(33);changeDate('+count_hotels+')" style="width: 90px;" readonly="readonly" class="inputbox" /></td>';
- _tmpd += '<td style="padding-left: 5px;"><span class="req">*</span>Date end:<br /><input type="text" id="txt_date_end'+count_hotels+'" o1nchange="changeDate('+count_hotels+')" style="width: 90px;" readonly="readonly" class="inputbox" /></td>';
- _tmpd += '<td style="padding-left: 5px;"><span class="req">*</span>Period:<br /><select class="inputbox" style="width: 120px;" id="sel_period'+count_hotels+'"></select></td>';
- _tmpd += '<td style="padding-left: 5px;"><span class="req">*</span>Price:<br /><input type="text" id="txt_price'+count_hotels+'" style="width: 80px;" class="inputbox" /></td>';
- _tmpd += '<td style="padding-left: 5px;"> <br /><input type="button" class="button-blue small" onclick="addLink('+count_hotels+')" value="Add date" /></td></tr></table>';
- _tmpd += '</div><div id="div_links'+count_hotels+'"><ul id="sortable'+count_hotels+'" class="sortable"></ul></div>';
- $('#hotel_'+count_hotels).html(_tmpd);
- $('#hotel_'+count_hotels).fadeIn(500);
- eval("elem = {'txt_date_start"+count_hotels+"': 'Y-ds-m-ds-d'};");
- var opts = {formElements: elem, noFadeEffect:true, callbackFunctions:{"dateset":[changeDate]} };
- datePickerController.createDatePicker(opts);
- eval("elem = {'txt_date_end"+count_hotels+"': 'Y-ds-m-ds-d'};");
- opts = {formElements: elem, noFadeEffect:true, callbackFunctions:{"dateset":[changeDate]}};
- datePickerController.createDatePicker(opts);
- document.getElementById('hotel_'+count_hotels).scrollIntoView(true);
- hotelsArray[count_hotels] = {'title': '', 'dates': [], 'act': '1'};
- $("#sortable"+count_hotels).sortable({ update: function(){} });
- count_hotels++;
- }
- function changeDate(arg)
- {
- var _d = dateFormat(arg.date, "yyyy-mm-dd");
- if (_d =='' || _d=='0000-00-00') return;
- var _arr = arg.id.split('txt_date_start');
- var id = -1;
- if (_arr.length==2 && parseInt(_arr[1])>=0)
- {
- id = parseInt(_arr[1]);
- $('#txt_date_start'+id).val(_d);
- }
- else
- {
- _arr = arg.id.split('txt_date_end');
- if (_arr.length==2 && parseInt(_arr[1])>=0)
- {
- id = parseInt(_arr[1]);
- $('#txt_date_end'+id).val(_d);
- }
- }
- if (id=='NaN' || id<0) return;
- $('#sel_period'+id+' option').remove();
- var date_start = $('#txt_date_start'+id).val();
- var date_end = $('#txt_date_end'+id).val();
- if (date_start=='' || (/^[0-9]{4}\-((0[1-9])|(1[0-2]))\-(([1-2][0-9])|([0][1-9])|(3[0-1]))$/.test(date_start) == false) ||
- date_end=='' || (/^[0-9]{4}\-((0[1-9])|(1[0-2]))\-(([1-2][0-9])|([0][1-9])|(3[0-1]))$/.test(date_end) == false) )
- {
- return;
- }
- buildPeriodSelect(date_start, date_end, 'sel_period'+id, '');
- }
- function changeDateEdit(arg)
- {
- if (edit_hid == -1 || edit_did == -1) return;
- if (hotelsArray[edit_hid] == '-1' || hotelsArray[edit_hid].dates[edit_did] == '-1' || !isEdit) return;
- var _d = dateFormat(arg.date, "yyyy-mm-dd");
- if (_d =='' || _d=='0000-00-00') return;
- $('#'+arg.id).val(_d);
- $('#sel_period_edit option').remove();
- var date_start = $('#txt_date_start_edit').val();
- var date_end = $('#txt_date_end_edit').val();
- if (date_start=='' || (/^[0-9]{4}\-((0[1-9])|(1[0-2]))\-(([1-2][0-9])|([0][1-9])|(3[0-1]))$/.test(date_start) == false) ||
- date_end=='' || (/^[0-9]{4}\-((0[1-9])|(1[0-2]))\-(([1-2][0-9])|([0][1-9])|(3[0-1]))$/.test(date_end) == false) )
- {
- return;
- }
- buildPeriodSelect(date_start, date_end, 'sel_period_edit', hotelsArray[edit_hid].dates[edit_did].period);
- }
- function deleteHotel(id)
- {
- try{
- hotelsArray[id] = '-1';
- //datesArray[id] = '-1';
- $('#hotel_'+id).fadeOut(600);
- setTimeout(function(){$('#hotel_'+id).remove();}, 600)
- }catch(err){}
- }
- function buildPeriodSelect(date_start, date_end, eid, sel)
- {
- $('#'+eid+' option').remove();
- var date1 = new Date(date_start);
- var date2 = new Date(date_end);
- if (date1>date2)
- {
- alert('Date-end should be bigger than date-start');
- return;
- }
- var days = Math.floor( (date2 - date1)/86400000 );
- var _selected = '';
- if (days == 0)
- {
- _selected = (sel=='1 d.')?' selected="selected" ':'';
- $('#'+eid).append('<option value="1 d."'+_selected+'>1 d.</option>');
- _selected = (sel=='1 d. / 1 n.')?' selected="selected" ':'';
- $('#'+eid).append('<option value="1 d. / 1 n."'+_selected+'>1 d. / 1 n.</option>');
- }
- else if (days>0)
- {
- _selected = (sel==(days+1)+' d.')?' selected="selected" ':'';
- $('#'+eid).append('<option value="'+(days+1)+' d."'+_selected+'>'+(days+1)+' d.</option>');
- if (days>0)
- {
- _selected = (sel==(days+1)+' d. / '+(days)+' n.')?' selected="selected" ':'';
- $('#'+eid).append('<option value="'+(days+1)+' d. / '+(days)+' n."'+_selected+'>'+(days+1)+' d. / '+(days)+' n.</option>');
- }
- _selected = (sel==(days+1)+' d. / '+(days+1)+' n.')?' selected="selected" ':'';
- $('#'+eid).append('<option value="'+(days+1)+' d. / '+(days+1)+' n."'+_selected+'>'+(days+1)+' d. / '+(days+1)+' n.</option>');
- }
- }
- //dates
- /*----------------------------------------------------------------------------------*/
- function addLink(id)
- {
- if (hotelsArray[id] == '-1') return;
- var count_dates = hotelsArray[id].dates.length;
- try{
- var date_start = $('#txt_date_start'+id).val();
- var date_end = $('#txt_date_end'+id).val();
- var period = $('#sel_period'+id).val();
- var price = $('#txt_price'+id).val();
- if (date_start=='' || (/^[0-9]{4}\-((0[1-9])|(1[0-2]))\-(([1-2][0-9])|([0][1-9])|(3[0-1]))$/.test(date_start) == false) )
- {
- alert('Enter date-start');
- $('#txt_date_start'+id).focus();
- return;
- }
- if (date_end=='' || (/^[0-9]{4}\-((0[1-9])|(1[0-2]))\-(([1-2][0-9])|([0][1-9])|(3[0-1]))$/.test(date_end) == false))
- {
- alert('Enter Date-end');
- $('#txt_date_end'+id).focus();
- return;
- }
- if (period=='' || period=='NaN' || period==null || period=='null')
- {
- alert('Select period');
- $('#sel_period'+id).focus();
- return;
- }
- if (price=='' || (/^([\+\-]{0,1})([\d]{1,8})([\.]{0,1})([\d]{0,3})$/.test(price) == false))
- {
- alert('Enter Price');
- $('#txt_price'+id).focus();
- return;
- }
- var tmp = _createElement( "li", {'id': "lnk"+id+"_"+count_dates, 'style': 'display: none;'});
- document.getElementById('sortable'+id).appendChild(tmp);
- var _tmpd = '<table width="100%"><tr>';
- _tmpd += '<td>Date: <b>'+date_start + ' - '+date_end+'</b></span></td>';
- _tmpd += '<td width="240">Period: <b>'+period+'</b></td>';
- _tmpd += '<td width="100">Price: <span style="font-weight: bold;color: red;">'+price+'</span></td>';
- _tmpd += '<td width="65"><label><input type="checkbox" id="chk'+id+'_'+count_dates+'" checked="checked" onchange="chkLink('+id+', '+count_dates+')" /> Active</label></td>';
- _tmpd += '<td align="right" style="width: 48px;padding-right: 5px;"><a onclick="editLink('+id+', '+count_dates+')" title="Edit"><img src="'+base_url+'app/admin/views/images/edit16.png" alt="" border="0" /></a><a onclick="deleteLink('+id+', '+count_dates+')" title="Delete"><img src="'+base_url+'app/admin/views/images/del16.png" alt="" border="0" /></a></td>';
- _tmpd += '</tr></table>';
- hotelsArray[id].dates[count_dates] = {'date_start': date_start, 'date_end': date_end, 'period': period, 'price': price, 'act': '1'};
- $('#txt_date_start'+id).val('');
- $('#txt_date_end'+id).val('');
- $('#sel_period'+id).val('');
- $('#sel_period'+id+' option').remove();
- $('#txt_price'+id).val('');
- $('#lnk'+id+'_'+count_dates).html(_tmpd);
- $('#lnk'+id+'_'+count_dates).fadeIn(1000)
- }catch(err){alert(err);}
- }
- /*-----------------------------------------------------------------------------*/
- function chkLink(hid, did)
- {
- if (hotelsArray[hid] == '-1' || hotelsArray[hid].dates[did] == '-1') return;
- hotelsArray[hid].dates[did].act = (document.getElementById('chk'+hid+'_'+did).checked)?'1':'0';
- }
- /*-----------------------------------------------------------------------------*/
- function editLink(hid, did)
- {
- if (hotelsArray[hid] == '-1' || hotelsArray[hid].dates[did] == '-1' || isEdit) return;
- isEdit = true;
- edit_hid = hid;
- edit_did = did;
- $('#tbl_addform'+hid+' *').attr('disabled', 'true');
- var _tmpd = '<table style="margin: 3px;"><tr>';
- _tmpd += '<td>Date start:<br /><input type="text" id="txt_date_start_edit" style="width: 90px;" value="'+_htmlspecialchars(hotelsArray[hid].dates[did].date_start)+'" class="inputbox" /></td>';
- _tmpd += '<td style="padding-left: 5px;">Date end:<br /><input type="text" id="txt_date_end_edit" style="width: 90px;" value="'+_htmlspecialchars(hotelsArray[hid].dates[did].date_end)+'" class="inputbox" /></td>';
- _tmpd += '<td style="padding-left: 5px;">Period:<br /><select class="inputbox" style="width: 120px;" id="sel_period_edit"></select></td>';
- _tmpd += '<td style="padding-left: 5px;">Price:<br /><input type="text" id="txt_price_edit" style="width: 145px;" value="'+_htmlspecialchars(hotelsArray[hid].dates[did].price)+'" class="inputbox" /></td>';
- _tmpd += '<td style="padding-left: 5px;"><input type="button" class="button-red small" onclick="cancelLink('+hid+','+did+')" value="Cancel" style="width: 50px;" /><div style="margin-top: 3px;"><input type="button" class="button-green small" onclick="saveLink('+hid+','+did+')" value="Save" style="width: 50px;" /></div></td></tr></table>';
- $('#lnk'+hid+'_'+did).css('height', '50px');
- $('#lnk'+hid+'_'+did).html(_tmpd);
- var opts = {formElements:{"txt_date_start_edit":"Y-ds-m-ds-d"}, noFadeEffect:true, callbackFunctions:{"dateset":[changeDateEdit]} };
- datePickerController.createDatePicker(opts);
- opts = {formElements:{"txt_date_end_edit":"Y-ds-m-ds-d"}, noFadeEffect:true, callbackFunctions:{"dateset":[changeDateEdit]} };
- datePickerController.createDatePicker(opts);
- buildPeriodSelect(hotelsArray[hid].dates[did].date_start, hotelsArray[hid].dates[did].date_end, 'sel_period_edit', hotelsArray[hid].dates[did].period);
- }
- /*-----------------------------------------------------------------------------*/
- function saveLink(hid, did)
- {
- if (!isEdit) return;
- var date_start = $('#txt_date_start_edit').val();
- var date_end = $('#txt_date_end_edit').val();
- var period = $('#sel_period_edit').val();
- var price = $('#txt_price_edit').val();
- if (date_start=='' || (/^[0-9]{4}\-((0[1-9])|(1[0-2]))\-(([1-2][0-9])|([0][1-9])|(3[0-1]))$/.test(date_start) == false) )
- {
- alert('Enter date-start');
- $('#txt_date_start_edit').focus();
- return;
- }
- if (date_end=='' || (/^[0-9]{4}\-((0[1-9])|(1[0-2]))\-(([1-2][0-9])|([0][1-9])|(3[0-1]))$/.test(date_end) == false))
- {
- alert('Enter Date-end');
- $('#txt_date_end_edit').focus();
- return;
- }
- if (period=='' || period=='NaN' || period==null || period=='null')
- {
- alert('Select period');
- $('#sel_period_edit').focus();
- return;
- }
- if (price=='' || (/^([\+\-]{0,1})([\d]{1,8})([\.]{0,1})([\d]{0,3})$/.test(price) == false))
- {
- alert('Enter Price');
- $('#txt_price_edit').focus();
- return;
- }
- hotelsArray[hid].dates[did] = {'date_start': date_start,
- 'date_end': date_end,
- 'period': period,
- 'price': price,
- 'act': hotelsArray[hid].dates[did].act};
- var _chk = '';
- if (hotelsArray[hid].dates[did].act=='1') _chk = ' checked="checked"';
- var _tmpd = '<table width="100%"><tr>';
- _tmpd += '<td>Date: <b>'+_htmlspecialchars(hotelsArray[hid].dates[did].date_start)+' - '+_htmlspecialchars(hotelsArray[hid].dates[did].date_end)+'</b></span></td>';
- _tmpd += '<td width="240">Period: <b>'+_htmlspecialchars(hotelsArray[hid].dates[did].period)+'</b></td>';
- _tmpd += '<td width="100">Price: <span style="font-weight: bold;color: red;">'+_htmlspecialchars(hotelsArray[hid].dates[did].price)+'</span></td>';
- _tmpd += '<td width="65"><label><input type="checkbox" id="chk'+hid+'_'+did+'"'+_chk+' onchange="chkLink('+hid+','+did+')" /> Active</label></td>';
- _tmpd += '<td align="right" style="width: 48px;padding-right: 5px;"><a onclick="editLink('+hid+','+did+')" title="Edit"><img src="'+base_url+'app/admin/views/images/edit16.png" alt="" border="0" /></a><a onclick="deleteLink('+hid+','+did+')" title="Delete"><img src="'+base_url+'app/admin/views/images/del16.png" alt="" border="0" /></a></td>';
- _tmpd += '</tr></table>';
- $('#tbl_addform'+hid+' *').attr('disabled', '');
- $('#lnk'+hid+'_'+did).css('height', '32px');
- $('#lnk'+hid+'_'+did).html(_tmpd);
- isEdit = false;
- edit_hid = -1;
- edit_did = -1;
- }
- /*-----------------------------------------------------------------------------*/
- function cancelLink(hid, did)
- {
- if (hotelsArray[hid] == '-1' || hotelsArray[hid].dates[did] == '-1' || !isEdit) return;
- var _chk = '';
- if (hotelsArray[hid].dates[did].act=='1') _chk = ' checked="checked"';
- var _tmpd = '<table width="100%"><tr>';
- _tmpd += '<td>Date: <b>'+_htmlspecialchars(hotelsArray[hid].dates[did].date_start)+' - '+_htmlspecialchars(hotelsArray[hid].dates[did].date_end)+'</b></span></td>';
- _tmpd += '<td width="240">Period: <b>'+_htmlspecialchars(hotelsArray[hid].dates[did].period)+'</b></td>';
- _tmpd += '<td width="100">Price: <span style="font-weight: bold;color: red;">'+_htmlspecialchars(hotelsArray[hid].dates[did].price)+'</span></td>';
- _tmpd += '<td width="65"><label><input type="checkbox" id="chk'+hid+'_'+did+'"'+_chk+' onchange="chkLink('+hid+','+did+')" /> Active</label></td>';
- _tmpd += '<td align="right" style="width: 48px;padding-right: 5px;"><a onclick="editLink('+hid+','+did+')" title="Edit"><img src="'+base_url+'app/admin/views/images/edit16.png" alt="" border="0" /></a><a onclick="deleteLink('+hid+','+did+')" title="Delete"><img src="'+base_url+'app/admin/views/images/del16.png" alt="" border="0" /></a></td>';
- _tmpd += '</tr></table>';
- $('#tbl_addform'+hid+' *').attr('disabled', '');
- $('#lnk'+hid+'_'+did).css('height', '32px');
- $('#lnk'+hid+'_'+did).html(_tmpd);
- isEdit = false;
- edit_hid = -1;
- edit_did = -1;
- }
- /*-----------------------------------------------------------------------------*/
- function deleteLink(hid, did)
- {
- try
- {
- hotelsArray[hid].dates[did] = '-1';
- $('#lnk'+hid+'_'+did).fadeOut(600)
- setTimeout(function(){$('#lnk'+hid+'_'+did).remove();}, 700)
- }catch(err){}
- }
- /*-----------------------------------------------------------------------------*/
- function clickSaveButton(type, form_id)
- {
- if (submitForm())
- {
- $('#hdn_confirm').val(type);
- $('#'+form_id).submit();
- return true;
- }
- return false;
- }
- function submitForm()
- {
- if (isEdit)
- {
- alert('Save all Trip dates first');
- return false;
- }
- //check hotels titles
- var i=0;
- var j=0;
- var _data = '';
- for (i=0;i<hotelsArray.length;i++)
- {
- if (hotelsArray[i]=='-1') continue;
- if ( $('#txt_title'+i).val()=='' )
- {
- alert('Enter all hotels names');
- $('#txt_title'+i).focus();
- return;
- }
- _data += '<input type="hidden" name="hotels_titles[]" value="'+_htmlspecialchars($('#txt_title'+i).val())+'" />';
- }
- //dates
- var _imgSer;
- var _linksSerArr;
- var _id;
- var hid=0;
- for (i=0;i<hotelsArray.length;i++)
- {
- if (hotelsArray[i]=='-1') continue;
- _data += '<input type="hidden" name="hotels_images[]" value="'+_htmlspecialchars($('#txt_image'+i).val())+'" />';
- if (hotelsArray[i].dates.length==0)
- {
- _data += '<input type="hidden" name="dates_start['+hid+'][]" value="" />';
- _data += '<input type="hidden" name="dates_end['+hid+'][]" value="" />';
- _data += '<input type="hidden" name="dates_period['+hid+'][]" value="" />';
- _data += '<input type="hidden" name="dates_price['+hid+'][]" value="" />';
- _data += '<input type="hidden" name="dates_act['+hid+'][]" value="" />';
- continue;
- }
- _imgSer = $("#sortable"+i).sortable('serialize');
- if (_imgSer == '') continue;
- _linksSerArr = _imgSer.split('&');
- for (i=0;i<_linksSerArr.length;i++)
- {
- _id = parseInt(_linksSerArr[i].replace('lnk'+i+'[]=', ''));
- if (hotelsArray[i].dates[_id] == '-1') continue;
- _data += '<input type="hidden" name="dates_start['+hid+'][]" value="'+_htmlspecialchars(hotelsArray[i].dates[_id].date_start)+'" />';
- _data += '<input type="hidden" name="dates_end['+hid+'][]" value="'+_htmlspecialchars(hotelsArray[i].dates[_id].date_end)+'" />';
- _data += '<input type="hidden" name="dates_period['+hid+'][]" value="'+_htmlspecialchars(hotelsArray[i].dates[_id].period)+'" />';
- _data += '<input type="hidden" name="dates_price['+hid+'][]" value="'+_htmlspecialchars(hotelsArray[i].dates[_id].price)+'" />';
- _data += '<input type="hidden" name="dates_act['+hid+'][]" value="'+hotelsArray[i].dates[_id].act+'" />';
- }
- hid++;
- }
- document.getElementById('hiddenvars').innerHTML = _data;
- return true;
- }
- /*-----------------------------------------------------------------------------*/
- $(document).ready(function(){
- $("#sortable").sortable({ update: function(){} });
- });
- {/literal}
- </script>
- <form action="{$base_url}admin.php?m={$module}&c={$controll}&a={$action}" method="post" accept-charset="utf-8" id="frm_addpage" onsubmit="return false;">
- <input type="hidden" name="confirm" id="hdn_confirm" value="" />
- <input type="hidden" name="id" value="{$id}" />
- <input type="hidden" name="p" value="{$p}" />
- {$filter_hidden}
- <div id="mainbody">
- <div class="boxin">
- <div class="header">
- <h3>{if $action == 'add'}Add{else}Edit{/if} trip</h3>
- <div class="buttons">
- <input type="button" value="Close" class="button-red" onclick="document.location.href='{$base_url}admin.php?m={$module}&p={$p}{$filter_url}';" />
- {if $save_behavior == '2buttons'}<input type="button" value="Apply" class="button-blue" onclick="clickSaveButton('apply', 'frm_addpage');" /> {/if}
- <input type="button" value="Save" class="button-green" onclick="clickSaveButton('save', 'frm_addpage');" />
- </div>
- </div>
- <div class="content">
- {include file='sys/flashmessage.tpl'}
- <div id="tabs" class="tabs">
- <a tab="#tab_general" id="a_tab_general">General</a>
- <a tab="#tab_dates" id="a_tab_dates">Hotels & Dates</a>
- </div>
- <div id="tab_general">
- <span class="req">*</span>Transport type:{if isset($errors.transport)} <span class="error">{$errors.transport}</span>{/if}
- <div style="border: 1px solid {if isset($errors.transport)}red{else}#bbb{/if}; width: 200px;padding: 4px;height: 40px;overflow: auto;">
- {foreach from=$transports key=i item=t}
- <label style="float: left;margin: 7px;height: 22px;" title="{$t.name}"><input type="radio" name="form[transport]" value="{$t.id}"{if $t.id==$form.transport} checked="checked"{/if}><img src="{$base_url}app/admin/views/images/transport/{$t.icon}" alt=""/></label>
- {/foreach}
- </div><br /><br />
- <span class="req">*</span>Trip name:{if isset($errors.title)} <span class="error">{$errors.title}</span>{/if}<br />
- <input type="text" name="form[title]" value="{$form.title}" id="txt_title" maxlength="250" style="width: 300px;" class="inputbox{if isset($errors.title)} error{/if}" />
- <img align="top" src="{$base_url}app/admin/views/images/infoicon.png" class="vtip" title="1-250 charachters" alt="" />
- <br /><br />
- Active: <label><input type="radio" name="form[active]"{if $form.active!='0'} checked="checked"{/if} value="1" />Yes</label><label><input type="radio" name="form[active]"{if $form.active=='0'} checked="checked"{/if} value="0" />No</label><br /><br />
- <span class="req">*</span>Type:{if isset($errors.type)} <span class="error">{$errors.type}</span>{/if}<br />
- <select name="form[type]" class="inputbox{if isset($errors.type)} error{/if}">
- <option value="">-- Select type --</option>
- <option value="kruizai"{if $form.type=='kruizai'} selected="selected"{/if}>Kruizai</option>
- <option value="vokietijos"{if $form.type=='vokietijos'} selected="selected"{/if}>Kelionės iš Vokietijos</option>
- <option value="lenkijos"{if $form.type=='lenkijos'} selected="selected"{/if}>Kelionės iš Lenkijos</option>
- </select><br /><br />
- {assign var='image_var' value='image'}
- {assign var='image_var_th' value='image_th'}
- {*
- Image: {if isset($errors.image)} <span class="error">{$errors.image}</span>{/if}
- <div style="margin-top: 5px;">
- <input type="hidden" name="form[{$image_var}]" value="{$form[$image_var]}" id="txt_{$image_var}" maxlength="255" />
- <img src="{$form[$image_var_th]}" style="cursor: url('{$base_url}app/admin/views/images/cursor_zoom.gif'), auto;margin: 3px 0px;border:none; display: {if $form[$image_var] == ''}none{else}block{/if};" id="img_{$image_var}" alt="" class="selectimg" onclick="previewImage('{$image_var}');" />
- <input type="button" class="button-blue small" value="Select" onclick="selectImage('{$base_url}', '{$image_var}')" /> <input type="button" class="button-blue small" value="Delete" onclick="deleteImage('{$image_var}')" />
- </div><br />
- *}
- <span class="req">*</span>Country:{if isset($errors.country)} <span class="error">{$errors.country}</span>{/if}<br />
- <select name="form[country]" class="inputbox{if isset($errors.country)} error{/if}" onchange="changeCountry()" id="sel_country">
- <option value="">-- Select country --</option>
- {foreach from=$countries key=i item=c}
- <option value="{$i}"{if $i==$form.country} selected="selected"{/if}>{$c}</option>
- {/foreach}
- </select><br /><br />
- <span class="req">*</span>Destination:{if isset($errors.city)} <span class="error">{$errors.city}</span>{/if}<br />
- <select name="form[city]" class="inputbox{if isset($errors.city)} error{/if}" id="sel_city">
- <option value="">-- Select destination --</option>
- {foreach from=$cities key=i item=c}
- <option value="{$i}"{if $i==$form.city} selected="selected"{/if}>{$c}</option>
- {/foreach}
- </select><br /><br />
- <span class="req">*</span>Travel organization:{if isset($errors.travel_org)} <span class="error">{$errors.travel_org}</span>{/if}
- <div style="border: 1px solid {if isset($errors.travel_org)}red{else}#bbb{/if}; width: 510px;padding: 4px;height: 80px;overflow: auto;">
- {foreach from=$travelorgs key=i item=t}
- <label style="float: left;margin: 7px;height: 22px;" title="{$t.name}"><input type="radio" name="form[travel_org]" value="{$t.id}"{if $t.id==$form.travel_org} checked="checked"{/if}><img src="{$base_url}app/admin/views/images/travels_orgs/{$t.icon}" alt=""/></label>
- {/foreach}
- </div><br /><br />
- Email for reservation notify:<br />
- <label style="display: block;margin: 4px 0px;"><input type="radio" name="form[email_type]" value="global"{if $form.email_type=='global'} checked="checked"{/if} id="email_type_global" onchange="changeEmailType()" /> Default site email ({$site_email})</label>
- <label style="display: block;margin: 4px 0px;"><input type="radio" name="form[email_type]" value="custom"{if $form.email_type=='custom'} checked="checked"{/if} id="email_type_custom" onchange="changeEmailType()" /> Custom email</label>
- <input type="text" name="form[email]" value="{$form.email}" id="txt_email" {if $form.email_type=='global'} disabled="disabled"{/if} maxlength="250" style="width: 300px;" class="inputbox{if isset($errors.email)} error{/if}" class="inputbox" /> {if isset($errors.email)} <span class="error">{$errors.email}</span>{/if}
- <br /><br />
- Short description:{if isset($errors.description)} <span class="error">{$errors.description}</span>{/if}<br />
- <textarea name="form[description]" id="txt_text" style="width: 500px;height: 100px;" class="notinymce inputbox{if isset($errors.description)} error{/if}">{$form.description}</textarea><br /><br />
- Full description:{if isset($errors.description_full)} <span class="error">{$errors.description_full}</span>{/if}<br />
- <textarea name="form[description_full]" id="txt_description_full">{$form.description_full}</textarea><br /><br />
- {include file='sys/basic_seo.tpl'}
- </div>
- <div id="tab_dates">
- <div style="position: fixed;right: 0;float: right;margin-right: 20px;margin-top: -47px;"><input type="button" class="button-green" value="+ Add Hotel" onclick="addHotel()" /></div>
- <div style="clear: both;"></div>
- <div id="hotelsArea">
- {if isset($form.hotels) && is_array($form.hotels) && count($form.hotels)>0}
- {foreach from=$form.hotels key=i item=h}
- <div id="hotel_{$i}" class="hotel">
- <div class="hotel-del"><a href="#" onclick="deleteHotel({$i});return false;">delete</a></div>
- <span class="req">*</span>Hotel name:<br />
- <input type="text" id="txt_title{$i}" maxlength="250" value="{$h.title}" style="width: 300px;" class="inputbox" /> <br /><br />
- Image:
- <div style="margin-top: 5px;">
- <input type="hidden" value="" id="txt_image{$i}" maxlength="255" />
- <img src="{$h.image_th}" style="cursor: url('{$base_url}app/admin/views/images/cursor_zoom.gif'), auto;margin: 3px 0px;border:none; display: {if $h.image_th!=''}block{else}none{/if};" id="img_image{$i}" alt="" class="selectimg" onclick="previewHotelImage('image{$i}');" />
- <input type="button" class="button-blue small" value="Select" onclick="selectHotelImage('{$base_url}', 'image{$i}')" /> <input type="button" class="button-blue small" value="Delete" onclick="deleteHotelImage('image{$i}')" />
- </div><br /><br />
- <div style="border-bottom: 1px solid #bbb;padding-bottom: 15px;">
- <table id="tbl_addform{$i}"><tr>
- <td><span class="req">*</span>Date start:<br /><input type="text" id="txt_date_start{$i}" style="width: 90px;" readonly="readonly" class="inputbox" /></td>
- <td style="padding-left: 5px;"><span class="req">*</span>Date end:<br /><input type="text" id="txt_date_end{$i}" style="width: 90px;" readonly="readonly" class="inputbox" /></td>
- <td style="padding-left: 5px;"><span class="req">*</span>Period:<br /><select class="inputbox" style="width: 120px;" id="sel_period{$i}"></select></td>
- <td style="padding-left: 5px;"><span class="req">*</span>Price:<br /><input type="text" id="txt_price{$i}" style="width: 80px;" class="inputbox" /></td>
- <td style="padding-left: 5px;"> <br /><input type="button" class="button-blue small" onclick="addLink({$i})" value="Add date" /></td></tr></table>
- </div><div id="div_links{$i}">
- <ul id="sortable{$i}" class="sortable">
- {if isset($h.dates) && is_array($h.dates) && count($h.dates)>0}
- {foreach from=$h.dates key=j item=d}
- <li id="lnk{$i}_{$j}">
- <table width="100%"><tr>
- <td>Date: <b>{$d.date_start} - {$d.date_end}</b></span></td>
- <td width="240">Period: <b>{$d.period}</b></td>
- <td width="100">Price: <span style="font-weight: bold;color: red;">{$d.price}</span></td>
- <td width="65"><label><input type="checkbox" id="chk{$i}_{$j}"{if $d.active=='1'} checked="checked"{/if} onchange="chkLink({$i},{$j})" /> Active</label></td>
- <td align="right" style="width: 48px;padding-right: 5px;"><a onclick="editLink({$i},{$j})" title="Edit"><img src="{$base_url}app/admin/views/images/edit16.png" alt="" border="0" /></a><a onclick="deleteLink({$i},{$j})" title="Delete"><img src="{$base_url}app/admin/views/images/del16.png" alt="" border="0" /></a></td>
- </tr></table>
- </li>
- {/foreach}
- {/if}
- </ul></div>
- <script type="text/javascript">{literal}
- var opts = {formElements: {'txt_date_start{/literal}{$i}{literal}': 'Y-ds-m-ds-d'}, noFadeEffect:true, callbackFunctions:{"dateset":[changeDate]} };
- datePickerController.createDatePicker(opts);
- opts = {formElements: {'txt_date_end{/literal}{$i}{literal}': 'Y-ds-m-ds-d'}, noFadeEffect:true, callbackFunctions:{"dateset":[changeDate]} };
- datePickerController.createDatePicker(opts);
- {/literal}</script>
- </div>
- {/foreach}
- {/if}
- </div>
- <br /><br />
- {*<span class="req">*</span>Title/Hotel name:{if isset($errors.title)} <span class="error">{$errors.title}</span>{/if}<br />
- <input type="text" name="form[title]" value="{$form.title}" id="txt_title" maxlength="250" style="width: 300px;" class="inputbox{if isset($errors.title)} error{/if}" />
- <img align="top" src="{$base_url}app/admin/views/images/infoicon.png" class="vtip" title="1-250 charachters" alt="" />
- <br /><br /><br />
- <div style="border-bottom: 1px solid #bbb;padding-bottom: 15px;">
- <table id="tbl_addform"><tr>
- <td>Date start:<br /><input type="text" id="txt_date_start" style="width: 90px;" readonly="readonly" class="inputbox" /></td>
- <td style="padding-left: 5px;">Date end:<br /><input type="text" id="txt_date_end" style="width: 90px;" readonly="readonly" class="inputbox" /></td>
- <td style="padding-left: 5px;">Period:<br /><input type="text" id="txt_period" class="inputbox" /></td>
- <td style="padding-left: 5px;">Price:<br /><input type="text" id="txt_price" class="inputbox" /></td>
- <td style="padding-left: 5px;"> <br /><input type="button" class="button-blue small" onclick="addLink()" value="Add date" /></td></tr></table>
- <script type="text/javascript">{literal}
- var opts = {formElements:{"txt_date_start":"Y-ds-m-ds-d"}, noFadeEffect:true};
- datePickerController.createDatePicker(opts);
- opts = {formElements:{"txt_date_end":"Y-ds-m-ds-d"}, noFadeEffect:true};
- datePickerController.createDatePicker(opts);
- {/literal}</script>
- </div>
- <div id="div_links"><ul id="sortable">{$dates_html}</ul></div>
- *}
- </div>
- <br /><br />
- </div>
- </div>
- </div>
- <div id="hiddenvars" style="display: none;"></div>
- </form>
- {literal}<script type="text/javascript">
- $(document).ready(function(){
- $.tabs('#tabs a');
- changeCountry();
- });
- </script>{/literal}
- {include file='footer.tpl'}
Add Comment
Please, Sign In to add comment