Ignore:
Timestamp:
2011/07/27 13:49:38 (13 years ago)
Author:
468
Message:

#1413 スマートフォン版テンプレートファイル変更(HTML5対応)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_11-dev/data/Smarty/templates/sphone/products/list.tpl

    r20764 r21050  
    2020 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. 
    2121 *}--> 
     22<script type="text/javascript" src="<!--{$smarty.const.ROOT_URLPATH}-->js/products.js"></script> 
    2223<script type="text/javascript">//<![CDATA[ 
    2324// 並び順を変更 
     
    3738 
    3839<!--▼CONTENTS--> 
    39 <div id="undercolumn" class="product product_list"> 
    40     <form name="form1" id="form1" method="get" action="?"> 
     40<section id="product_list"> 
     41    <form name="form1" id="form1" method="get" action="<!--{$smarty.const.ROOT_URLPATH}-->products/list.php"> 
    4142        <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
    4243        <input type="hidden" name="mode" value="<!--{$mode|h}-->" /> 
    43         <!--{* ▼検索条件 *}--> 
    4444        <input type="hidden" name="category_id" value="<!--{$arrSearchData.category_id|h}-->" /> 
    4545        <input type="hidden" name="maker_id" value="<!--{$arrSearchData.maker_id|h}-->" /> 
    4646        <input type="hidden" name="name" value="<!--{$arrSearchData.name|h}-->" /> 
    47         <!--{* ▲検索条件 *}--> 
    48         <!--{* ▼ページナビ関連 *}--> 
    4947        <input type="hidden" name="orderby" value="<!--{$orderby|h}-->" /> 
    5048        <input type="hidden" name="disp_number" value="<!--{$disp_number|h}-->" /> 
    5149        <input type="hidden" name="pageno" value="<!--{$tpl_pageno|h}-->" /> 
    52         <!--{* ▲ページナビ関連 *}--> 
    53         <!--{* ▼注文関連 *}--> 
    5450        <input type="hidden" name="product_id" value="" /> 
    5551        <input type="hidden" name="classcategory_id1" value="" /> 
     
    5753        <input type="hidden" name="product_class_id" value="" /> 
    5854        <input type="hidden" name="quantity" value="" /> 
    59         <!--{* ▲注文関連 *}--> 
    6055        <input type="hidden" name="rnd" value="<!--{$tpl_rnd|h}-->" /> 
    6156    </form> 
    62  
    63     <!--★タイトル★--> 
     57     
    6458    <h2 class="title"><!--{$tpl_subtitle|h}--></h2> 
    65  
    66     <!--▼検索条件--> 
    67     <!--{if $tpl_subtitle == "検索結果"}--> 
    68         <ul class="pagecondarea"> 
    69             <li><strong>商品カテゴリ:</strong><!--{$arrSearch.category|h}--></li> 
    70         <!--{if $arrSearch.maker|strlen >= 1}--><li><strong>メーカー:</strong><!--{$arrSearch.maker|h}--></li><!--{/if}--> 
    71             <li><strong>商品名:</strong><!--{$arrSearch.name|h}--></li> 
    72         </ul> 
     59            <p class="intro clear"><span class="attention"><span id="productscount"><!--{$tpl_linemax}--></span>件</span>の商品がございます。</p> 
     60 
     61<!--▼ページナビ(本文)--> 
     62<section class="pagenumberarea clearfix"> 
     63 <ul> 
     64    <!--{if $orderby != 'price'}--> 
     65        <li><a href="javascript:fnChangeOrderby('price');" rel="external">価格順</a></li> 
     66    <!--{else}--> 
     67        <li class="on_number">価格順</li> 
    7368    <!--{/if}--> 
    74     <!--▲検索条件--> 
    75  
    76     <!--▼ページナビ(本文)--> 
    77     <!--{capture name=page_navi_body}--> 
    78         <div class="pagenumberarea"> 
    79             <div class="change"> 
    80                 <!--{if $orderby != 'price'}--> 
    81                     <a href="javascript:fnChangeOrderby('price');">価格順</a> 
    82                 <!--{else}--> 
    83                     <strong>価格順</strong> 
    84                 <!--{/if}--> 
    85                 <!--{if $orderby != "date"}--> 
    86                         <a href="javascript:fnChangeOrderby('date');">新着順</a> 
    87                 <!--{else}--> 
    88                     <strong>新着順</strong> 
    89                 <!--{/if}--> 
    90             </div> 
    91             <div class="navi"><!--{$tpl_strnavi}--></div> 
    92         </div> 
    93     <!--{/capture}--> 
    94     <!--▲ページナビ(本文)--> 
    95  
    96     <!--{foreach from=$arrProducts item=arrProduct name=arrProducts}--> 
    97  
    98         <!--{if $smarty.foreach.arrProducts.first}--> 
    99             <!--▼件数--> 
    100             <div> 
    101                 <span class="pagenumber"><!--{$tpl_linemax}--></span>件の商品 
    102  
    103                 <select name="disp_number" onchange="javascript:fnChangeDispNumber(this.value);"> 
    104                     <!--{foreach from=$arrPRODUCTLISTMAX item="dispnum" key="num"}--> 
    105                         <!--{if $num == $disp_number}--> 
    106                         <option value="<!--{$num}-->" selected="selected" ><!--{$dispnum}--></option> 
    107                         <!--{else}--> 
    108                         <option value="<!--{$num}-->" ><!--{$dispnum}--></option> 
    109                         <!--{/if}--> 
    110                     <!--{/foreach}--> 
    111                 </select> 
    112             </div> 
    113             <!--▲件数--> 
    114  
    115             <!--▼ページナビ(上部)--> 
    116             <form name="page_navi_top" id="page_navi_top" action="?"> 
    117                 <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
    118                 <!--{if $tpl_linemax > 0}--><!--{$smarty.capture.page_navi_body|smarty:nodefaults}--><!--{/if}--> 
    119             </form> 
    120             <!--▲ページナビ(上部)--> 
    121         <!--{/if}--> 
    122  
    123         <!--{assign var=id value=$arrProduct.product_id}--> 
    124         <!--{assign var=arrErr value=$arrProduct.arrErr}--> 
    125         <!--▼商品--> 
    126         <div class="listarea" class="clearfix"> 
    127         <a name="product<!--{$id|h}-->" /> 
    128             <div class="listphoto"> 
    129                 <!--★画像★--> 
    130                 <a href="<!--{$smarty.const.P_DETAIL_URLPATH}--><!--{$arrProduct.product_id|u}-->" class="over"><!--商品写真--><img src="<!--{$smarty.const.IMAGE_SAVE_URLPATH|sfTrimURL}-->/<!--{$arrProduct.main_list_image|sfNoImageMainList|h}-->" alt="<!--{$arrProduct.name|h}-->" class="picture" /></a> 
    131             </div> 
    132  
    133             <div class="listrightblock"> 
    134                 <!--▼商品ステータス--> 
    135                 <!--{if count($productStatus[$id]) > 0}--> 
    136                     <ul class="status_icon"> 
    137                             <li> 
    138                         <!--{foreach from=$productStatus[$id] item=status}-->  
    139                                 <img src="<!--{$TPL_URLPATH}--><!--{$arrSTATUS_IMAGE[$status]}-->" width="60" height="17" alt="<!--{$arrSTATUS[$status]}-->"/> 
    140                         <!--{/foreach}--> 
    141                             </li> 
    142                     </ul> 
    143                 <!--{/if}--> 
    144                 <!--▲商品ステータス--> 
    145  
    146                 <!--★商品名★--> 
    147                 <h3> 
    148                     <a href="<!--{$smarty.const.P_DETAIL_URLPATH}--><!--{$arrProduct.product_id|u}-->" name="product<!--{$arrProduct.product_id}-->"><!--{$arrProduct.name|h}--></a> 
    149                 </h3> 
    150  
    151                 <!--★コメント★--> 
    152                 <p> 
    153                     <span class="pricebox sale_price"> 
    154                         販売価格(税込):</span> 
    155                         <span class="price"> 
    156                             <span id="price02_default_<!--{$id}-->"> 
    157                                 <!--{if $arrProduct.price02_min == $arrProduct.price02_max}--> 
    158                                     <!--{$arrProduct.price02_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}--> 
    159                                 <!--{else}--> 
    160                                     <!--{$arrProduct.price02_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->~<!--{$arrProduct.price02_max|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}--> 
    161                                 <!--{/if}--> 
    162                             </span><span id="price02_dynamic_<!--{$id}-->"></span> 
    163                             円</span> 
     69    <!--{if $orderby != "date"}--> 
     70        <li><a href="javascript:fnChangeOrderby('date');" rel="external">新着順</a></li> 
     71    <!--{else}--> 
     72        <li class="on_number">新着順</li> 
     73    <!--{/if}--> 
     74 </ul> 
     75</section> 
     76<!--▲ページナビ(本文)--> 
     77 
     78<!--{foreach from=$arrProducts item=arrProduct name=arrProducts}--> 
     79    <!--{assign var=id value=$arrProduct.product_id}--> 
     80    <!--{assign var=arrErr value=$arrProduct.arrErr}--> 
     81    <!--▼商品--> 
     82    <div class="list_area clearfix"> 
     83     <!--★画像★--> 
     84       <p class="listphoto"><img src="<!--{$smarty.const.IMAGE_SAVE_URLPATH|sfTrimURL}-->/<!--{$arrProduct.main_list_image|sfNoImageMainList|h}-->" width="80" height="80" alt="<!--{$arrProduct.name|h}-->" /></p> 
     85     
     86     <div class="listrightblock"> 
     87      <div class="statusArea"> 
     88      <!--▼商品ステータス--> 
     89       <!--{if count($productStatus[$id]) > 0}--> 
     90            <ul class="status_icon"> 
     91                <!--{foreach from=$productStatus[$id] item=status}-->  
     92                     <li><!--{$arrSTATUS[$status]}--></li> 
     93             <!--{/foreach}--> 
     94            </ul> 
     95      <!--{/if}--> 
     96      <!--▲商品ステータス--> 
     97      </div> 
     98 
     99      <!--★商品名★--> 
     100        <h3><a rel="external" href="<!--{$smarty.const.P_DETAIL_URLPATH}--><!--{$arrProduct.product_id|u}-->" name="product<!--{$arrProduct.product_id}-->" class="productName"><!--{$arrProduct.name|h}--></a></h3> 
     101         
     102      <!--★商品価格★--> 
     103        <p><span class="pricebox sale_price"><span class="mini">販売価格(税込):</span></span>  
     104        <span class="price">  
     105            <span id="price02_default_<!--{$id}-->"> 
     106              <!--{if $arrProduct.price02_min == $arrProduct.price02_max}--> 
     107                <!--{$arrProduct.price02_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}--> 
     108              <!--{else}--> 
     109                <!--{$arrProduct.price02_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->~<!--{$arrProduct.price02_max|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}--> 
     110              <!--{/if}--> 
     111            </span><span id="price02_dynamic_<!--{$id}-->"> 
     112            </span>円 
     113        </span></p> 
     114      <!--★商品コメント価格★--> 
     115         <p class="listcomment"><!--{$arrProduct.main_list_comment|h|nl2br}--></p> 
     116     </div> 
     117     </div> 
     118    <!--▲商品--> 
     119     
     120<!--{foreachelse}--> 
     121    <!--{include file="frontparts/search_zero.tpl"}--> 
     122<!--{/foreach}--> 
     123 
     124<!--{if count($arrProducts) < $tpl_linemax}--> 
     125<p><a rel="external" href="javascript: void(0);" class="btn_more" id="btn_more_product" onClick="getProducts(<!--{$disp_number|h}-->); return false;">もっとみる(+<!--{$disp_number|h}-->件)</a></p> 
     126<!--{/if}--> 
     127</section> 
     128<!--▲CONTENTS--> 
     129 
     130<script> 
     131var pageNo = 2; 
     132var url = "<!--{$smarty.const.P_DETAIL_URLPATH}-->"; 
     133var imagePath = "<!--{$smarty.const.IMAGE_SAVE_URLPATH|sfTrimURL}-->/"; 
     134var statusImagePath = "<!--{$TPL_URLPATH}-->"; 
     135 
     136function getProducts(limit) { 
     137    $.mobile.pageLoading(); 
     138    var i = limit; 
     139    //送信データを準備 
     140    var postData = {}; 
     141    $('#form1').find(':input').each(function(){   
     142        postData[$(this).attr('name')] = $(this).val();   
     143    }); 
     144    postData["mode"] = "json"; 
     145    postData["pageno"] = pageNo; 
     146 
     147    $.ajax({ 
     148        type: "POST", 
     149           data: postData, 
     150           cache: false, 
     151           dataType: "json", 
     152           error: function(XMLHttpRequest, textStatus, errorThrown){ 
     153            alert(textStatus); 
     154            $.mobile.pageLoading(true); 
     155           }, 
     156           success: function(result){ 
     157            
     158            var productStatus = result.productStatus; 
     159             for (var j = 0; j < i; j++) { 
     160                 if (result[j] != null) { 
     161                     var product = result[j]; 
     162                     var productHtml = ""; 
     163                    var maxCnt = $(".list_area").length - 1; 
     164                    var productEl = $(".list_area").get(maxCnt); 
     165                    productEl = $(productEl).clone(true).insertAfter(productEl); 
     166                    maxCnt++; 
    164167                     
    165                 </p> 
    166  
    167                 <p class="listcomment"><!--{$arrProduct.main_list_comment|h|nl2br}--></p> 
    168  
    169             </div> 
    170         </div> 
    171         <!--▲商品--> 
    172  
    173         <!--{if $smarty.foreach.arrProducts.last}--> 
    174             <!--▼ページナビ(下部)--> 
    175             <form name="page_navi_bottom" id="page_navi_bottom" action="?"> 
    176                 <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 
    177                 <!--{if $tpl_linemax > 0}--><!--{$smarty.capture.page_navi_body|smarty:nodefaults}--><!--{/if}--> 
    178             </form> 
    179             <!--▲ページナビ(下部)--> 
    180         <!--{/if}--> 
    181  
    182     <!--{foreachelse}--> 
    183         <!--{include file="frontparts/search_zero.tpl"}--> 
    184     <!--{/foreach}--> 
    185  
    186 </div> 
    187 <!--▲CONTENTS--> 
     168                     //商品写真をセット 
     169                     $($(".list_area .listphoto img").get(maxCnt)).attr({ 
     170                                                                 src: imagePath + product.main_list_image,  
     171                                                                 alt: product.name 
     172                                                             }); 
     173 
     174                     //ステータスをセット 
     175                     var statusAreaEl = $($(".list_area div.statusArea").get(maxCnt)); 
     176                    //ステータスの削除 
     177                    statusAreaEl.empty(); 
     178 
     179                     if (productStatus[product.product_id] != null) { 
     180                         var statusEl = '<ul class="status_icon">'; 
     181                         var statusCnt = productStatus[product.product_id].length; 
     182                         for (var k = 0; k < statusCnt; k++) { 
     183                             var status = productStatus[product.product_id][k]; 
     184                             var statusImgEl = '<li>' + status.status_name + '</li>' + "\n"; 
     185                             statusEl += statusImgEl; 
     186                         } 
     187                         statusEl += "</ul>"; 
     188                         statusAreaEl.append(statusEl); 
     189                     } 
     190                      
     191                     //商品名をセット 
     192                     $($(".list_area a.productName").get(maxCnt)).text(product.name); 
     193                     $($(".list_area a.productName").get(maxCnt)).attr("href", url + product.product_id); 
     194                      
     195                     //販売価格をセット 
     196                     var price = $($(".list_area span.price").get(maxCnt)); 
     197                    //販売価格をクリア 
     198                     price.empty(); 
     199                     var priceVale = ""; 
     200                    //販売価格が範囲か判定 
     201                     if (product.price02_min == product.price02_max) { 
     202                         priceVale = product.price02_min_tax_format + '円'; 
     203                     } else { 
     204                         priceVale = product.price02_min_tax_format + '~' + product.price02_max_tax_format + '円'; 
     205                     } 
     206                     price.append(priceVale); 
     207                      
     208                     //コメントをセット 
     209                     $($(".list_area .listcomment").get(maxCnt)).text(product.main_list_comment); 
     210 
     211                 } 
     212             } 
     213             pageNo++; 
     214 
     215             //すべての商品を表示したか判定 
     216             if (parseInt($("#productscount").text()) <= $(".list_area").length) { 
     217                 $("#btn_more_product").hide(); 
     218             } 
     219             $.mobile.pageLoading(true); 
     220           } 
     221}); 
     222} 
     223</script> 
Note: See TracChangeset for help on using the changeset viewer.