Beispiel #1
0
}
if (is_array($row)) {
    if (!empty($row['storeprice']) || $row['storeprice'] > $row['price']) {
        $row['cheap'] = $row['storeprice'] - $row['price'];
    } else {
        $row['cheap'] = 0;
    }
    $row['price'] = !empty($row['price']) ? "<span class=\"rmb_1\">¥</span>" . $row['price'] . "</span>" : "电询</span>";
    $row['storeprice'] = !empty($row['storeprice']) ? $row['storeprice'] . "</span>" : "无</span>";
    $row['litpic'] = empty($row['litpic']) ? getDefaultImage() : $row['litpic'];
    $row['description'] = !empty($row['description']) ? "<meta name=\"description\" content=\"" . $row['description'] . "\"/>" : "";
    $row['keywords'] = !empty($row['keyword']) ? "<meta name=\"keywords\" content=\"" . $row['keyword'] . "\"/>" : "";
    $row['subname'] = $row['title'];
    $row['id'] = strlen($row['id']) == 1 ? "0" . $row['id'] : $row['id'];
    $row['seotitle'] = !empty($row['seotitle']) ? $row['seotitle'] : $row['title'];
    $row['startplacename'] = getStartCityName($row['startcity']);
    foreach ($row as $k => $v) {
        $pv->Fields[$k] = $v;
    }
    //print_r($this->Fields);
}
$pv->Fields['title'] = !empty($row['seotitle']) ? $row['seotitle'] : $row['title'];
$linecontent = getLineContentPrint($row, 1);
//线路介绍分类
$typename = GetTypeName($typeid);
//获取栏目名称.
$pv->Fields['typename'] = $typename;
$pv->SetTemplet(SLINETEMPLATE . "/" . $cfg_df_style . "/" . "lines/" . "print.htm");
$pv->Display();
//打印页面函数重写
//线路内容模块
Beispiel #2
0
        echo $str;
    }
    exit;
}
//根据目的地id获取相应的线路(线路首页用)
if ($dopost == 'getLineByDestId') {
    $where = " where a.ishidden=0 and FIND_IN_SET({$dest_id},a.kindlist)";
    $leftjoin = "left join #@__kindorderlist b on(a.id = b.aid and b.classid = {$dest_id} and b.typeid=1)";
    $sql = "select a.* from #@__line a {$leftjoin} {$where} order by b.isding desc,b.isjian desc,case when b.displayorder is null then 9999 end,b.displayorder asc,a.addtime desc limit 0,6";
    $arr = $dsql->getAll($sql);
    $out = $left = $right = '';
    $k = 1;
    foreach ($arr as $row) {
        $url = GetWebURLByWebid($row['webid']) . '/lines/show_' . $row['aid'] . '.html';
        $litpic = getUploadFileUrl($row['litpic']);
        $startcity = getStartCityName($row['startcity']);
        $startcity = !empty($startcity) ? "[{$startcity}出发]" : '';
        $linename = "{$startcity}{$row['linename']}";
        $award2 = !empty($row['jefentprice']) ? $row['jefentprice'] : 0;
        $booknum = Helper_Archive::getSellNum($row['id'], 1) + $row['bookcount'];
        $real = getLineRealPrice($row['aid'], $row['webid']);
        $row['lineprice'] = $real ? $real : $row['price'];
        if ($k < 5) {
            $left .= ' <div class="list_con_sy">
                    <div class="sy_img"><a class="fl" href="' . $url . '" title="' . $linename . '"><img class="fl" src="' . $litpic . '" width="100" height="80" alt="' . $linename . '" /></a></div>
                    <div class="sy_txt">
                    <p class="p1"><a href="' . $url . '" target="_blank">' . $linename . '</a></p>
                    <p class="p2">' . $row['sellpoint'] . '</p>
                    <p class="p3">
                      <span>销量:<b>' . $booknum . '</b>人已购买</span>
                      <span>评论:<b>' . Helper_Archive::getCommentNum($row['id'], 1) . '</b>条评论</span>
Beispiel #3
0
function getLines()
{
    global $dsql, $xml, $weburl;
    $xml_url_list = '';
    $sql = "select * from sline_line limit 10";
    $arr = $dsql->getAll($sql);
    foreach ($arr as $row) {
        $filename = dirname(__FILE__) . '/' . $row['id'] . '.xml';
        $url = $GLOBALS['cfg_basehost'] . "/lines/show_{$row['aid']}.html";
        $price_arr = XmlLine::getLineMinPrice($row['id']);
        $overcity = explode(',', $row['overcity']);
        $overspot_arr = XmlLine::getOverSpot($row['id']);
        //线路图片处理
        $lineimages = explode(",", $row['piclist']);
        $image_arr = array();
        foreach ($lineimages as $image) {
            $im = explode('||', $image);
            $image_arr[] = $GLOBALS['cfg_basehost'] . $im[0];
        }
        //线路行程介绍
        $linejieshao = XmlLine::getLineJieshao($row['id']);
        //线路日历
        $linedate = XmlLine::getLineDate($row['id']);
        $out = '';
        $out .= "<route>\n";
        $out .= $xml->genSingleInfo('title', $row['title']);
        $out .= $xml->genSingleInfo('url', $url);
        $out .= $xml->genSingleInfo('price', $price_arr['price']);
        $out .= $xml->genSingleInfo('childprice', $price_arr['childprice']);
        $out .= $xml->genSingleInfo('price_diff', '无');
        $out .= $xml->genSingleInfo('function', '跟团游');
        $out .= $xml->genSingleInfo('departure', getStartCityName($row['startcity']));
        $out .= $xml->genSingleInfo('type', '国内游');
        $out .= $xml->genSingleInfo('subject', XmlLine::getLineAttr($row['attrid']));
        $out .= $xml->genSingleInfo('date_of_departure', date('Y-m-d'));
        $out .= $xml->genSingleInfo('date_of_expire', date('Y-m-d', strtotime(date('Y-m-d') . '+5day')));
        $out .= $xml->genSingleInfo('advance_day', $row['linebefore']);
        $out .= $xml->genSingleInfo('day_num', $row['lineday']);
        $out .= $xml->genSingleInfo('hotel_night', $row['linenight']);
        $out .= $xml->genSingleInfo('to_traffic', XmlLine::getTransport($row['transport']));
        $out .= $xml->genSingleInfo('back_traffic', XmlLine::getTransport($row['transport']));
        $out .= $xml->genSingleInfo('promotion', '无');
        $out .= $xml->genMutilInfo('cities', 'city', $overcity);
        $out .= $xml->genDaySpot($overspot_arr);
        $out .= $xml->genMutilInfo('images', 'image', $image_arr);
        $out .= $xml->genMutilInfo('features', 'feature', array($row['features']));
        $out .= $xml->genMutilInfo('fee_includes', 'fee_include', array($row['feeinclude']));
        $out .= $xml->genMutilInfo('fee_excludes', 'fee_exclude', array($row['reserved2']));
        $out .= $xml->genMutilInfo('booking_terms', 'booking_term', array($row['beizhu']));
        $out .= $xml->genMutilInfo('visa_infos', 'visa_info', array('暂无'));
        $out .= $xml->genMutilInfo('contract_styles', 'contract_style', array($row['payment']));
        $out .= $xml->genDayJieShao($linejieshao);
        $out .= $xml->genLineDate($linedate);
        $out .= "</route>\n";
        $xml->writeXml($out, $filename);
        $xml_url_list .= "<url>{$weburl}/xml/{$row['id']}.xml</url>\n";
    }
    $list_file_name = dirname(__FILE__) . '/list.xml';
    $xml->writeListXml($xml_url_list, $list_file_name);
    echo 'ok';
}
Beispiel #4
0
function lib_getlinelist(&$ctag, &$refObj)
{
    global $startcity;
    global $dsql;
    include SLINEDATA . "/webinfo.php";
    $attlist = "row|8,flag|,type|top,sonid|,limit|0,";
    FillAttsDefault($ctag->CAttribute->Items, $attlist);
    extract($ctag->CAttribute->Items, EXTR_SKIP);
    $webid = 0;
    $innertext = trim($ctag->GetInnertext());
    $revalue = '';
    $basefield = "a.aid,a.id,a.webid,a.title,a.seotitle,a.sellpoint,a.litpic,a.storeprice,a.price,a.linedate,a.features,a.transport,a.lineday,a.startcity,a.overcity,a.shownum,a.satisfyscore,a.bookcount,a.attrid,a.kindlist,a.color,a.iconlist";
    if ($type == 'top' && empty($flag)) {
        return '';
    }
    //如果调用二级栏目则必须在显示类里指定sonid
    $limit = !empty($limit) ? $limit : 0;
    if ($type == 'startcity') {
        $sql = "select  {$basefield} from #@__line as a left join #@__kindorderlist as c on (a.id=c.aid) where a.ishidden=0 and c.typeid=1 and startcity='{$startcity}' and c.classid={$sonid} and FIND_IN_SET({$sonid},a.kindlist) {$orderby}  limit {$limit},{$row}";
    }
    if ($type == 'mdd') {
        if ($flag == 'hot') {
            $orderby = 'order by case when c.displayorder is null then 9999 end,c.displayorder asc,a.modtime desc,a.addtime desc';
        } else {
            if ($flag == 'recommend') {
                $orderby = 'order by case when c.displayorder is null then 9999 end,c.displayorder asc,a.modtime desc,a.addtime desc';
            } else {
                if ($flag == 'specical') {
                    $orderby = 'order by case when c.displayorder is null then 9999 end,c.displayorder asc,a.modtime desc,a.addtime desc ';
                } else {
                    $orderby = 'order by case when c.displayorder is null then 9999 end,c.displayorder asc,a.modtime desc,a.addtime desc';
                }
            }
        }
        $sonid = isset($definekind) ? $definekind : $refObj->Fields['kindid'];
        //这里增加子站的判断
        if ($GLOBALS['sys_child_webid'] != 0) {
            $dest_id = $GLOBALS['sys_child_webid'];
        }
        $sonid = $sonid ? $sonid : $dest_id;
        $shownum = isset($row) ? $row : $refObj->Fields['shownum'];
        $shownum = empty($shownum) ? 6 : $shownum;
        if (isset($sonid)) {
            $number = isset($refObj->Fields['shownumber']) ? $refObj->Fields['shownumber'] : $row;
            //如果模块设置了显示数量则使用.
            $sql = "select {$basefield},c.isjian,c.istejia,c.isding  from #@__line as a left join #@__kindorderlist as c on (c.classid={$sonid} and a.id=c.aid  and c.typeid=1) where a.ishidden=0 and  FIND_IN_SET({$sonid},a.kindlist) {$orderby}  limit {$limit},{$shownum}";
        } else {
            return '';
        }
    } else {
        if ($type == 'searchrec') {
            if ($GLOBALS['childid'] != 0) {
                $kchild = $GLOBALS['childid'];
                $sql = "select  distinct {$basefield}  from #@__line as a left join #@__kindorderlist as c on (c.classid={$kchild} and a.id=c.aid  and c.typeid=1) where a.ishidden=0 and c.isjian=1 and FIND_IN_SET({$kchild},a.kindlist) order by case when c.displayorder is null then 9999 end,c.displayorder asc,a.modtime desc,a.addtime desc  limit 0,4";
            } else {
                $sql = "select {$basefield} a from #@__line where a.ishidden=0 and a.isjian=1  order by a.displayorder asc,a.modtime desc,a.addtime desc limit {$limit},{$row}";
            }
        } else {
            if ($type == 'destsearchrec') {
                if ($GLOBALS['destid'] != 0) {
                    $kchild = $GLOBALS['destid'];
                    $sql = "select {$basefield} from #@__line as a left join #@__kindorderlist as c on (c.classid={$kchild} and a.id=c.aid  and c.typeid=1) where  a.ishidden=0 and FIND_IN_SET({$kchild},a.kindlist) {$orderby}  limit 0,4";
                } else {
                    $sql = "select {$basefield} from #@__line a where a.ishidden=0 and a.isjian=1  order by a.displayorder asc,a.modtime desc,a.addtime desc limit {$limit},{$row}";
                }
            } else {
                if ($type == 'top') {
                    if ($flag == 'recommend') {
                        $sql = "select {$basefield},b.isding,b.istejia,b.displayorder from #@__line as a left join #@__allorderlist b on (a.id=b.aid and b.typeid=1) where a.ishidden=0 order by case when b.displayorder is null then 9999 end, b.displayorder asc,a.modtime desc,a.addtime desc limit {$limit},{$row}";
                    } else {
                        if ($flag == 'specical') {
                            $sql = "select {$basefield},b.isding,b.istejia,b.displayorder from #@__line as a left join #@__allorderlist b on (a.id=b.aid and b.typeid=1) where a.ishidden=0 order by b.displayorder asc,a.modtime desc,a.addtime desc limit {$limit},{$row}";
                        } else {
                            if ($flag == 'hot') {
                                $sql = "select {$basefield} from #@__line a where a.ishidden=0  order by a.shownum desc,a.modtime desc,a.addtime desc limit {$limit},{$row}";
                            } else {
                                if ($flag == 'attribute') {
                                    if (empty($attrid)) {
                                        $attrid = $refObj->Fields['attrid'];
                                    }
                                    $sql = "select {$basefield} from #@__line a where FIND_IN_SET('{$attrid}',a.attrid) and a.ishidden=0  order by a.displayorder asc,a.modtime desc,a.addtime desc limit {$limit},{$row}";
                                } else {
                                    if ($flag == 'relative') {
                                        $kindlist = $refObj->Fields['kindlist'];
                                        $maxkindid = array_remove_value($kindlist);
                                        //最后一级.
                                        $maxkindid = empty($maxkindid) ? $GLOBALS['dest_id'] : $maxkindid;
                                        $maxkindid = empty($maxkindid) ? 0 : $maxkindid;
                                        $where = " FIND_IN_SET({$maxkindid},a.kindlist) ";
                                        $sql = "select {$basefield} from #@__line a where {$where} and a.ishidden=0 order by a.shownum desc,a.modtime desc,a.addtime desc limit 0,{$row}";
                                    } else {
                                        if ($flag == 'listexcept') {
                                            $sql = "select aid from #@__line where isjian=1 and a.ishidden=0 order by isjian desc,displayorder asc limit 0,5";
                                            $dsql->Execute("list", $sql);
                                            $a = "";
                                            while ($str = $dsql->GetArray("list")) {
                                                $a .= $str["aid"] . ",";
                                            }
                                            $a = substr($a, 0, -1);
                                            if (!$a == "") {
                                                $a = "and aid not in ({$a})";
                                            }
                                            $sql = "select {$basefield} from #@__line a where {$a} order by  a.shownum desc limit {$limit},{$row}";
                                        }
                                    }
                                }
                            }
                        }
                    }
                } else {
                    if ($type == 'theme') {
                        $themeid = $refObj->Fields['themeid'];
                        if (empty($themeid)) {
                            return '';
                        }
                        $sql = "select {$basefield} from #@__line a where a.ishidden=0 and FIND_IN_SET({$themeid},a.themelist) order by a.modtime desc,a.addtime desc limit 0,{$row}";
                    } else {
                        if ($type = "day") {
                            $dayid = $refObj->Fields['groupid'];
                            if (empty($dayid)) {
                                return '';
                            }
                            $sql = "select {$basefield} from #@__line a where a.ishidden=0 and a.lineday={$dayid} order by a.modtime desc,a.addtime desc limit 0,{$row}";
                        }
                    }
                }
            }
        }
    }
    $dsql->SetQuery($sql);
    $dsql->Execute();
    $ctp = new STTagParse();
    $ctp->SetNameSpace("field", "[", "]");
    $ctp->LoadSource($innertext);
    $GLOBALS['autoindex'] = 0;
    $num = 0;
    while ($row = $dsql->GetArray()) {
        $GLOBALS['autoindex']++;
        $webroot = GetWebURLByWebid($row['webid']);
        $url = $webroot . "/lines/show_{$row['aid']}.html";
        $row['url'] = $url;
        $row['bookurl'] = "{$webroot}/lines/booking_{$row['aid']}.html";
        $startcity = getStartCityName($row['startcity']);
        $startcity = !empty($startcity) ? "[{$startcity}出发]" : '';
        if (!empty($GLOBALS['cfg_startcity_open'])) {
            $row['title'] = "{$startcity}{$row['title']}";
        } else {
            $row['title'] = "{$row['title']}";
        }
        $row['startcity'] = $startcity;
        $row['color'] = !empty($row['color']) ? "color:{$row['color']}" : '';
        $real = getLineRealPrice($row['aid'], $row['webid']);
        $row['lineprice'] = $real ? $real : $row['price'];
        $row['commentnum'] = Helper_Archive::getCommentNum($row['id'], 1);
        //评论次数
        $row['sellnum'] = Helper_Archive::getSellNum($row['id'], 1);
        //销售数量
        //$row['satisfyscore']=Helper_Archive::getSatisfyScore($row['id'],1); //满意度
        //获取后台满意度拼接%
        $row['satisfyscore'] = !empty($row['satisfyscore']) ? $row['satisfyscore'] . "%" : "";
        if (!empty($row['lineprice']) && !empty($row['storeprice'])) {
            $row['discount'] = abs((int) $row['storeprice'] - (int) $row['price']);
        } else {
            $row['discount'] = 0;
        }
        $row['price'] = empty($row['lineprice']) ? '<span class="rmb_1">电询</span>' : "<span class='rmb_1'>&yen;</span><span class='rmb_2'>" . $row['lineprice'] . '</span>';
        $row['price2'] = empty($row['lineprice']) ? '<span>电询</span>' : '<span>&yen;</span><strong>' . $row['lineprice'] . '</strong><i>起</i>';
        $row['agentprice'] = intval($row['storeprice']);
        $row['sellprice'] = empty($row['lineprice']) ? '0' : $row['lineprice'];
        //没有HTML标识的价格
        $row['storeprice'] = !empty($row['storeprice']) ? "<span class=\"rmb_2\">&yen;</span>" . $row['storeprice'] : "<span class=\"rmb_1\">电询</span>";
        $row['lineseries'] = getSeries($row['id'], '01');
        //$row['lit240']=getPicByName($row['linepic'],'lit240');
        //$row['lit160']=getPicByName($row['linepic'],'lit160');
        $row['litpic'] = getUploadFileUrl($row['litpic']);
        $row['lit240'] = getUploadFileUrl(str_replace('litimg', 'lit240', $row['litpic']));
        $row['lit160'] = getUploadFileUrl(str_replace('litimg', 'lit160', $row['litpic']));
        $row['jifentprice'] = !empty($row['jifentprice']) ? '&yen;' . $row['jifentprice'] : '无';
        $row['startdate'] = getLine_StartDate($row);
        //团期
        $row['jifentprice'] = MLine::getMinTprice($row['id']);
        $row['list'] = $num;
        foreach ($ctp->CTags as $tagid => $ctag) {
            if ($ctag->GetName() == 'array') {
                $ctp->Assign($tagid, $row);
            } else {
                $ctp->Assign($tagid, $row[$ctag->GetName()]);
            }
        }
        $revalue .= $ctp->GetResult();
    }
    return $revalue;
}
Beispiel #5
0
function getNewNavTitle($day, $attrid, $destname, $cityid)
{
    //目的地
    $out = !empty($destname) ? $destname : '';
    //属性
    $arr = getLineAttrArr($attrid, '_');
    foreach ($arr as $v) {
        $out .= "." . $v;
    }
    //天数
    $out .= !empty($day) ? '.' . $day . '日游' : '';
    $out .= '线路';
    //出发城市
    if ($cityid) {
        $cityname = getStartCityName($cityid);
        $out = $cityname . '出发' . '.' . $out;
    }
    return $out;
}
Beispiel #6
0
        $dest_id = !empty($d_id) ? $d_id : $dest_id;
    } else {
        $dest_id = 0;
    }
}
//$sql="select distinct a.aid,a.* from #@__car a where a.webid is not null";
$where = " where a.webid=0 ";
//租车城市
if (!empty($startplace)) {
    $startcity = $dsql->GetOne("select id from #@__startplace where cityname like '%{$startplace}%'");
    $startplaceid = $startcity['id'];
}
if ($startplaceid != 0) {
    //$sql.=" and a.startplaceid=$startplaceid ";
    $where .= " and a.startplaceid={$startplaceid} ";
    $startcityname = getStartCityName($startplaceid);
}
if ($carkindid != 0) {
    //$sql=$sql." and a.carkindid=$carkindid ";
    $car_where .= " and a.carkindid={$carkindid} ";
}
if ($attrid != 0) {
    $attrid_arr = explode('_', $attrid);
    foreach ($attrid_arr as $k => $v) {
        if ($k == 0) {
            $attr_where .= " and find_in_set({$v},a.attrid)";
        } else {
            $attr_where .= " and find_in_set({$v},a.attrid)";
        }
    }
    //$sql.=$attr_where;