Merge branch 'master' of github.com:hainatravel/information-system

hotfix/paypal-note
赵鹏 4 years ago
commit e1fca99852

@ -423,7 +423,7 @@ class Information extends CI_Controller
} else if (strcasecmp($site_code, "cht") == 0 && !empty($auto_update_cache)) {
$update_info_log = $this->update_cache($ic_url);
} else if (strcasecmp($site_code, "ah") == 0 && !empty($auto_update_cache)) {
$update_info_log = $this->update_cache($ic_url);
//$update_info_log = $this->update_cache($ic_url);
} else if (strcasecmp($site_code, "cht") != 0 && strcasecmp($site_code, "gm") != 0 && strcasecmp($site_code, "ah") != 0) { //非cht站点并且非GM并且非AH
$update_info_log = $this->update_cache($ic_url);
} else if (strcasecmp($site_code, "ct") == 0 && !empty($auto_update_cache)) {
@ -649,7 +649,10 @@ class Information extends CI_Controller
if (!empty($meta_addon_js)) {
$template = str_replace('<!--@ADDON-JS@-->', '<script src="' . $meta_addon_js . '"></script>', $template);
}
$template = str_replace('<!--@CUSTOM-CONENT@-->', $information->ic_content, $template);
//设置内容图片缓加载
$lazy_content=$this->html_optimize_lib->set_lazy_loader($information->ic_content,'https://data.chinahighlights.com/grey.gif');
$template = str_replace('<!--@CUSTOM-CONENT@-->', $lazy_content, $template);
//Google广告代码
//if (!empty(get_meta($information->ic_id, 'meta_google_ad_content'))) {
$template = str_replace('<!--@Match-Content-GOOGLE@-->', '<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script><ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-4231674166786366" data-ad-slot="1447610161" data-matched-content-rows-num="2,2" data-matched-content-columns-num="1,3" data-matched-content-ui-type="image_stacked,image_stacked"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</script>', $template);
@ -755,7 +758,22 @@ class Information extends CI_Controller
if (!empty($meta_addon_js)) {
$template = str_replace('<!--@ADDON-JS@-->', '<script src="' . $meta_addon_js . '"></script>', $template);
}
$template = str_replace('<!--@CUSTOM-CONENT@-->', $information->ic_content, $template);
//设置内容图片缓加载
$lazy_content=$this->html_optimize_lib->set_lazy_loader($information->ic_content,'https://data.asiahighlights.com/grey.gif');
$template = str_replace('<!--@CUSTOM-CONENT@-->', $lazy_content, $template);
//替换内容中广告
$temp_array=array();
preg_match_all('^<!--@TIPS-[A-Z]+-([0-9]+)@-->^', $template, $temp_array);
if(!empty($temp_array[1])){
foreach ($temp_array[1] as $key=>$item){
$tips_detail= $this->recommends_and_tips_model->tips_detail($item);
if($tips_detail){
$template = str_replace($temp_array[0][$key], $tips_detail->it_content, $template);
}
}
}
//Google广告代码
//if (!empty(get_meta($information->ic_id, 'meta_google_ad_content'))) {
$template = str_replace('<!--@Match-Content-GOOGLE@-->', '<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script><ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-4231674166786366" data-ad-slot="2509031466" data-matched-content-rows-num="2,2" data-matched-content-columns-num="1,3" data-matched-content-ui-type="image_stacked,image_stacked"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</script>', $template);

@ -20,8 +20,26 @@ class html_optimize_lib
$this->CI->load->library('simple_html_dom_lib');
}
//开启了延迟加载
public function set_lazy_loader($html, $grey_pic)
{
$html_object = str_get_html($html);
foreach ($html_object->find('img') as $image) {
$img_src = $image->src;
if (!empty($image->originalsrc)) {
$img_src = $image->originalsrc;
}
$image->src = $grey_pic;
$image->loader = 'lazy';
$image->originalsrc = $img_src;
}
return $html_object->save();
}
//获取图片尺寸
//获取图片尺寸,$lazy_loader是否开启延迟加载
public function set_image_size($html)
{
$html_object = str_get_html($html);
@ -34,9 +52,9 @@ class html_optimize_lib
$img_src = $image->originalsrc;
}
//图片已经设置了尺寸的不再修改
if (empty($image->width) && (strpos($img_src, '//data.') !== false || strpos($img_src, '//images.') !== false)) {//以data或者images开头的域名才能获取尺寸
if (empty($image->width) && (strpos($img_src, '//data.') !== false || strpos($img_src, '//images.') !== false)) {//以data或者images开头的域名才能获取尺寸
$img_src_urls = parse_url(trim($img_src));
$request_size[$img_src_urls['host']][] =$img_src_urls['path'];
$request_size[$img_src_urls['host']][] = $img_src_urls['path'];
}
}
@ -48,7 +66,7 @@ class html_optimize_lib
if (!empty($size_data)) {
$size_data = json_decode($size_data);
foreach ($size_data as $size_item) {
$size_item->photo = "https://".$host . $size_item->photo;//这个作为索引找到对应url的尺寸
$size_item->photo = "https://" . $host . $size_item->photo;//这个作为索引找到对应url的尺寸
$image_sizes[$size_item->photo] = $size_item;
}
}
@ -62,12 +80,12 @@ class html_optimize_lib
$img_src = $image->originalsrc;
}
//图片已经设置了尺寸的不再修改
if (empty($image->width) && (strpos($img_src, '//data.') !== false || strpos($img_src, '//images.') !== false)) {//以data或者images开头的域名才能获取尺寸
if (empty($image->width) && (strpos($img_src, '//data.') !== false || strpos($img_src, '//images.') !== false)) {//以data或者images开头的域名才能获取尺寸
$img_src_urls = parse_url(trim($img_src));
$img_index="https://".$img_src_urls['host'] . $img_src_urls['path'];
if(!empty($image_sizes[$img_index])){
$image->width=$image_sizes[$img_index]->width;
$image->height=$image_sizes[$img_index]->height;
$img_index = "https://" . $img_src_urls['host'] . $img_src_urls['path'];
if (!empty($image_sizes[$img_index])) {
$image->width = $image_sizes[$img_index]->width;
$image->height = $image_sizes[$img_index]->height;
}
}

@ -40,6 +40,7 @@ class recommends_and_tips_model extends CI_Model
it.it_id
,it.it_title
,it.it_expires
,it.it_code
,it.it_content
,it.it_sitecode
,it.it_datetime

@ -27,6 +27,7 @@ class Tips extends CI_Controller
$infoTip->it_title = '新广告';
$infoTip->it_expires = time();
$infoTip->it_content = '';
$infoTip->it_code = '<!--@TIPS--@-->';
$infoTip->it_datetime = time();
$infoTip->it_sitecode = $this->config->item('site_code');
$infoTip->it_id = $this->infoTips_model->add('infoTips', $infoTip);
@ -75,6 +76,7 @@ class Tips extends CI_Controller
$infoTip = new StdClass;
$infoTip->it_title = $this->input->post('it_title');
$infoTip->it_expires = strtotime($this->input->post('it_expires'));
$infoTip->it_code = $this->input->post('it_code');
$infoTip->it_content = $this->input->post('it_content');
$infoTip->it_datetime = time();
$infoTip->it_id = $this->infoTips_model->update('infoTips', $infoTip, 'it_id=' . $it_id);

@ -32,6 +32,7 @@ class infoTips_model extends CI_Model
it.it_id
,it.it_title
,it.it_expires
,it.it_code
,it.it_content
,it.it_sitecode
,it.it_datetime

@ -15,7 +15,9 @@
$(function () {
$("#it_expires").datepicker({
showButtonPanel: true
showButtonPanel: true,
changeMonth:true,
changeYear:true
});
})
@ -33,13 +35,20 @@
<form action="<?php echo site_url('thirdparty/recommend/tips/save') ?>"
method="post" id="tips_info_form" name="tips_info_form">
<div class="row">
<div class="col-md-16">
<div class="col-md-10">
<div class="form-group">
<label for="it_title" ">广告标题</label>
<input type="text" class="form-control" id="it_title" name="it_title"
value="<?php echo $infoTip->it_title; ?>">
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="it_title" ">广告代码</label>
<input type="text" class="form-control" id="it_code" name="it_code" readonly
value="<!--@TIPS-<?php echo strtoupper($infoTip->it_sitecode).'-'.$infoTip->it_id; ?>@-->">
</div>
</div>
<div class="col-md-4">
<div class="form-group">
<label for="it_expires">过期时间</label>

@ -1,16 +1,17 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-2">
<div class="col-md-1">
</div>
<div class="col-md-5">
<div class="col-md-9">
<h4>广告管理</h4>
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-4">#</th>
<th class="col-md-16">标题</th>
<th class="col-md-2">#</th>
<th class="col-md-9">标题</th>
<th class="col-md-9">代码</th>
<th class="col-md-4">过期时间</th>
</tr>
</thead>
@ -21,10 +22,12 @@
<td>
<a href="<?php echo site_url('thirdparty/recommend/tips/edit/'.$item->it_id); ?>"><?php echo $item->it_title; ?></a>
</td>
<td><?php echo htmlspecialchars($item->it_code); ?></td>
<td><?php echo date('m/d/Y', $item->it_expires); ?></td>
</tr>
<?php } ?>
<?php } ?>
<tr>
<td></td>
<td></td>
<td></td>
<td><a href="<?php echo site_url('thirdparty/recommend/tips/add'); ?>">添加广告</a></td>
@ -35,7 +38,7 @@
</tbody>
</table>
</div>
<div class="col-md-15">
<div class="col-md-14">
<h4>广告和信息推荐绑定设置</h4>
<?php foreach ($groupList as $item) {
if ($item->is_level == 0) { ?>

@ -51,18 +51,18 @@
<div class="listtour">
<ul class="inspiration">
<li><a href="/thailand/travel-guide" target="_blank">Thailand</a></li>
<li><a href="/japan/travel-guide" target="_blank">Japan</a></li>
<li><a href="/india/travel-guide" target="_blank">India</a></li>
<li><a href="/vietnam/travel-guide" target="_blank">Vietnam</a></li>
<li><a href="/thailand/travel-guide" >Thailand</a></li>
<li><a href="/japan/travel-guide" >Japan</a></li>
<li><a href="/india/travel-guide" >India</a></li>
<li><a href="/vietnam/travel-guide" >Vietnam</a></li>
</ul>
<ul class="inspiration">
<li><a href="/cambodia/travel-guide" target="_blank">Cambodia</a></li>
<li><a href="/myanmar/travel-guide" target="_blank">Myanmar</a></li>
<li><a href="/laos/travel-guide" target="_blank">Laos</a></li>
<li><a href="/cambodia/travel-guide" >Cambodia</a></li>
<li><a href="/myanmar/travel-guide" >Myanmar</a></li>
<li><a href="/laos/travel-guide" >Laos</a></li>
</ul>
<ul class="inspiration">
<li><a href="/tours/" target="_blank">Top Asia Tours</a></li>
<li><a href="/tours/" >Top Asia Tours</a></li>
</ul>
</div>
@ -76,18 +76,18 @@
<span class="inspirationtitle">Best Time to Visit</span>
<div class="listtour">
<ul class="inspiration">
<li><a href="/southeast-asia/best-time-to-visit" target="_blank">Southeast Asia</a></li>
<li><a href="/thailand/best-time-to-visit" target="_blank"> Thailand</a></li>
<li><a href="/japan/best-time-to-visit" target="_blank">Japan</a></li>
<li><a href="/vietnam/climate-and-weather" target="_blank">Vietnam</a></li>
<li><a href="/cambodia/best-time-to-visit" target="_blank">Cambodia</a></li>
<li><a href="/southeast-asia/best-time-to-visit" >Southeast Asia</a></li>
<li><a href="/thailand/best-time-to-visit" > Thailand</a></li>
<li><a href="/japan/best-time-to-visit" >Japan</a></li>
<li><a href="/vietnam/climate-and-weather" >Vietnam</a></li>
<li><a href="/cambodia/best-time-to-visit" >Cambodia</a></li>
</ul>
<ul class="inspiration">
<li><a href="/india/best-time-to-visit" target="_blank">India</a></li>
<li><a href="/bhutan/best-time-to-visit" target="_blank">Bhutan</a></li>
<li><a href="/laos/best-time-to-visit" target="_blank">Laos</a></li>
<li><a href="/myanmar/best-time-to-visit" target="_blank">Myanmar</a></li>
<li><a href="/nepal/best-time-to-visit" target="_blank">Nepal</a></li>
<li><a href="/india/best-time-to-visit" >India</a></li>
<li><a href="/bhutan/best-time-to-visit" >Bhutan</a></li>
<li><a href="/laos/best-time-to-visit" >Laos</a></li>
<li><a href="/myanmar/best-time-to-visit" >Myanmar</a></li>
<li><a href="/nepal/best-time-to-visit" >Nepal</a></li>
</ul>
</div>
</div>
@ -96,19 +96,19 @@
<span class="inspirationtitle">Top Things to Do</span>
<div class="listtour">
<ul class="inspiration">
<li><a href="/southeast-asia/things-to-do" target="_blank">Southeast Asia</a></li>
<li><a href="/bhutan/top-things-to-do" target="_blank">Bhutan</a></li>
<li><a href="/cambodia/top-things-to-do-in-siem-reap" target="_blank">Cambodia</a></li>
<li><a href="/india/top-things-to-do" target="_blank">India</a></li>
<li><a href="/japan/top-things-to-do" target="_blank">Japan</a></li>
<li><a href="/laos/top-attractions" target="_blank">Laos</a></li>
<li><a href="/southeast-asia/things-to-do" >Southeast Asia</a></li>
<li><a href="/bhutan/top-things-to-do" >Bhutan</a></li>
<li><a href="/cambodia/top-things-to-do-in-siem-reap" >Cambodia</a></li>
<li><a href="/india/top-things-to-do" >India</a></li>
<li><a href="/japan/top-things-to-do" >Japan</a></li>
<li><a href="/laos/top-attractions" >Laos</a></li>
</ul>
<ul class="inspiration">
<li><a href="/myanmar/top-things-to-do" target="_blank">Myanmar</a></li>
<li><a href="/nepal/top-things-to-do" target="_blank">Nepal</a></li>
<li><a href="/srilanka/top-things-to-do" target="_blank">Sri Lanka</a></li>
<li><a href="/thailand/top-things-to-do" target="_blank">Thailand</a></li>
<li><a href="/vietnam/top-things-to-do" target="_blank">Vietnam</a></li>
<li><a href="/myanmar/top-things-to-do" >Myanmar</a></li>
<li><a href="/nepal/top-things-to-do" >Nepal</a></li>
<li><a href="/srilanka/top-things-to-do" >Sri Lanka</a></li>
<li><a href="/thailand/top-things-to-do" >Thailand</a></li>
<li><a href="/vietnam/top-things-to-do" >Vietnam</a></li>
</ul>
</div>
</div>
@ -116,27 +116,27 @@
<div class="inspirationlist vacationtype">
<span class="inspirationtitle">Vacation Type</span>
<ul class="inspiration">
<li><a href="/asia/family-trip/top-destinations" target="_blank">Family Tours</a></li>
<li><a href="/asia/romantic-trip/how-to-plan" target="_blank">Honeymoon Ideas</a></li>
<li><a href="/southeast-asia/top-beaches" target="_blank">Beach Relaxation</a></li>
<li><a href="/thailand/trekking" target="_blank">Trekking Tours</a></li>
<li><a href="/myanmar/tours/myanmar-photography" target="_blank">Photography Tours</a></li>
<li><a href="/asia/family-trip/top-destinations" >Family Tours</a></li>
<li><a href="/asia/romantic-trip/how-to-plan" >Honeymoon Ideas</a></li>
<li><a href="/southeast-asia/top-beaches" >Beach Relaxation</a></li>
<li><a href="/thailand/trekking" >Trekking Tours</a></li>
<li><a href="/myanmar/tours/myanmar-photography" >Photography Tours</a></li>
</ul>
</div>
<div class="inspirationlist festival">
<span class="inspirationtitle">Festivals & Events</span>
<ul class="inspiration">
<li><a href="/thailand/light-festivals" target="_blank">Thailand Lantern Festival</a></li>
<li><a href="/india/when-is-diwali" target="_blank">Diwali in India</a></li>
<li><a href="/vietnam/new-year" target="_blank">Tet in Vietnam</a></li>
<li><a href="/thailand/light-festivals" >Thailand Lantern Festival</a></li>
<li><a href="/india/when-is-diwali" >Diwali in India</a></li>
<li><a href="/vietnam/new-year" >Tet in Vietnam</a></li>
</ul>
</div>
</div>
</div>
</li>
<li class="dropdown"><a href="/about-us/" class="p_topnavilink" target="_blank">About Us</a></li>
<li class="dropdown" style=" padding-top: 55px"><a href="/contact-us.htm" class="p_topnavilink contactbutton" target="_blank">Contact Us</a>
<li class="dropdown"><a href="/about-us/" class="p_topnavilink" >About Us</a></li>
<li class="dropdown" style=" padding-top: 55px"><a href="/contact-us.htm" class="p_topnavilink contactbutton" >Contact Us</a>
</li>
<li class="dropdown" style=" margin-right: 0;">
<div class="siteSearch">
@ -169,9 +169,17 @@
<div class="pc_content">
<!--@CUSTOM-CONENT@-->
</div>
<div class="right_brand_info">
<h2 >Why Travel with Asia Highlights</h2>
<ul >
<li class="tailormade"><strong >Tailor-made experience:</strong> All of your ideas/needs will be carefully considered to create your ideal trip.</li>
<li class="worryfree" ><strong >Worry-free planning: </strong>Every step of your trip, you will be looked after by your 1:1 travel consultant based in Asia.</li>
<li class="norisk" ><strong >No-risk booking:</strong> We refund as much as we can and adapt flexibly to unexpected changes.</li>
</ul>
</div>
<!--@TIPS-RIGHT@-->
</div>
<!--@ARTICLENEXT@-->
</div>
@ -184,7 +192,7 @@
<span class="infotailorword">We are here to help you...<br> Start planning your tailor-made Asia tour with 1-1
help from our travel advisors.
<span class="infotailormade"><a href="/forms/tailormade" target="_blank">Create My Trip <i aria-hidden="true"
<span class="infotailormade"><a href="/forms/tailormade" >Create My Trip <i aria-hidden="true"
class="fa fa-caret-right"></i></a></span>
</span>
@ -229,10 +237,10 @@
<div class="bottomaboutuslinks">
<div class="bottomlinksleft">
<ul class="withBorder">
<li><a href="/about-us/" rel="nofollow" target="_blank">About us</a></li>
<li><a href="/about-us/history.htm" rel="nofollow" target="_blank">History</a></li>
<li><a href="/about-us/our-differences.htm" rel="nofollow" target="_blank">Our Differences</a></li>
<li><a href="/contact-us.htm" rel="nofollow" target="_blank">Contact Us</a></li>
<li><a href="/about-us/" rel="nofollow" >About us</a></li>
<li><a href="/about-us/history.htm" rel="nofollow" >History</a></li>
<li><a href="/about-us/our-differences.htm" rel="nofollow" >Our Differences</a></li>
<li><a href="/contact-us.htm" rel="nofollow" >Contact Us</a></li>
</ul>
</div>
@ -266,8 +274,8 @@
originalsrc="https://data.chinahighlights.com/image/asia/asia-highlights-bottom-logo.png" width="114"
height="71" loader="lazy" class="img-responsive bottomlogopc">
<span class="bottomcopyright">© 2016-2021 Asia Highlights — Discovery Your Way! </span>
<span class="bottomprivacy"><a href="/privacy.htm" target="_blank">Privacy Policy</a> | <a
href="/terms-of-use.htm" target="_blank">Terms</a></span>
<span class="bottomprivacy"><a href="/privacy.htm" >Privacy Policy</a> | <a
href="/terms-of-use.htm" >Terms</a></span>
</div>
</div>

@ -168,11 +168,19 @@
<div id="main_content_mobile">
<!--@CUSTOM-CONENT@-->
<div class="right_brand_info">
<h2 >Why Travel with Asia Highlights</h2>
<ul >
<li class="tailormade"><strong >Tailor-made experience:</strong> All of your ideas/needs will be carefully considered to create your ideal trip.</li>
<li class="worryfree" ><strong >Worry-free planning: </strong>Every step of your trip, you will be looked after by your 1:1 travel consultant based in Asia.</li>
<li class="norisk" ><strong >No-risk booking:</strong> We refund as much as we can and adapt flexibly to unexpected changes.</li>
</ul>
</div>
<!--@TIPS-RIGHT@-->
</div>
<!--@ARTICLENEXT@-->
<!--MOBILE 正文 结束-->

Loading…
Cancel
Save