Changeset 22586
- Timestamp:
- 2013/02/28 09:30:36 (11 years ago)
- Location:
- branches/version-2_12-dev
- Files:
-
- 2 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_12-dev/data/Smarty/templates/default/frontparts/bloc/category.tpl
r22206 r22586 26 26 }); 27 27 //]]></script> 28 28 29 <div class="block_outer"> 29 30 <div id="category_area"> 30 31 <div class="block_body"> 31 32 <h2><img src="<!--{$TPL_URLPATH}-->img/title/tit_bloc_category.gif" alt="商品カテゴリ" /></h2> 32 <!--{strip}--> 33 <ul id="categorytree"> 34 <!--{assign var=preLev value=1}--> 35 <!--{assign var=firstdone value=0}--> 36 <!--{section name=cnt loop=$arrTree}--> 37 <!--{* 表示フラグがTRUEなら表示 *}--> 38 <!--{if $arrTree[cnt].display == 1}--> 39 <!--{assign var=level value=`$arrTree[cnt].level`}--> 40 <!--{assign var=levdiff value=`$level-$preLev`}--> 41 <!--{if $levdiff > 0}--> 42 <ul> 43 <!--{elseif $levdiff == 0 && $firstdone == 1}--> 44 </li> 45 <!--{elseif $levdiff < 0}--> 46 <!--{section name=d loop=`$levdiff*-1`}--> 47 </li> 48 </ul> 49 <!--{/section}--> 50 </li> 51 <!--{/if}--> 52 <li class="level<!--{$level}--><!--{if in_array($arrTree[cnt].category_id, $tpl_category_id)}--> onmark<!--{/if}-->"> 53 <p> 54 <a href="<!--{$smarty.const.ROOT_URLPATH}-->products/list.php?category_id=<!--{$arrTree[cnt].category_id}-->"<!--{if in_array($arrTree[cnt].category_id, $tpl_category_id)}--> class="onlink"<!--{/if}-->><!--{$arrTree[cnt].category_name|h}-->(<!--{$arrTree[cnt].product_count|default:0}-->)</a> 55 </p> 56 <!--{if $firstdone == 0}--><!--{assign var=firstdone value=1}--><!--{/if}--> 57 <!--{assign var=preLev value=`$level`}--> 58 <!--{/if}--> 59 <!--{* セクションの最後に閉じタグを追加 *}--> 60 <!--{if $smarty.section.cnt.last}--> 61 <!--{if $preLev-1 > 0}--> 62 <!--{section name=d loop=`$preLev-1`}--> 63 </li> 64 </ul> 65 <!--{/section}--> 66 </li> 67 <!--{else}--> 68 </li> 69 <!--{/if}--> 70 <!--{/if}--> 71 <!--{/section}--> 72 </ul> 73 <!--{/strip}--> 33 <!--{include file="`$smarty.const.TEMPLATE_REALDIR`frontparts/bloc/category_tree_fork.tpl" children=$arrTree treeID="categorytreelist"}--> 74 34 </div> 75 35 </div> -
branches/version-2_12-dev/data/Smarty/templates/sphone/frontparts/bloc/category.tpl
r22206 r22586 25 25 <h2 class="title_block">商品カテゴリ</h2> 26 26 <nav id="categorytree"> 27 <ul id="categorytreelist"> 28 <!--{assign var=preLev value=1}--> 29 <!--{assign var=firstdone value=0}--> 30 <!--{section name=cnt loop=$arrTree}--> 31 <!--{* インデントは Smarty 構文を優先としています。 *}--> 32 <!--{* カテゴリ表示・非表示切り替え *}--> 33 <!--{if $arrTree[cnt].view_flg != "2"}--> 34 <!--{* 表示フラグがTRUEなら表示 *}--> 35 <!--{assign var=level value=`$arrTree[cnt].level`}--> 36 <!--{* level2以下なら表示(level指定可能) *}--> 37 <!--{if $level <= 5 || $arrTree[cnt].display == 1}--> 38 <!--{assign var=levdiff value=`$level-$preLev`}--> 39 <!--{if $levdiff > 0}--> 40 <ul> 41 <!--{elseif $levdiff == 0 && $firstdone == 1}--> 42 </li> 43 <!--{elseif $levdiff < 0}--> 44 <!--{section name=d loop=`$levdiff*-1`}--> 45 </li> 46 </ul> 47 <!--{/section}--> 48 </li> 49 <!--{/if}--> 50 51 <li class="level<!--{$level}--><!--{if in_array($arrTree[cnt].category_id, $tpl_category_id)}--> onmark<!--{/if}-->"><span class="category_header"></span><span class="category_body"><a rel="external" href="<!--{$smarty.const.ROOT_URLPATH}-->products/list.php?category_id=<!--{$arrTree[cnt].category_id}-->"<!--{if in_array($arrTree[cnt].category_id, $tpl_category_id)}--> class="onlink"<!--{/if}-->><!--{$arrTree[cnt].category_name|h}-->(<!--{$arrTree[cnt].product_count|default:0}-->)</a></span> 52 <!--{if $firstdone == 0}--> 53 <!--{assign var=firstdone value=1}--> 54 <!--{/if}--> 55 <!--{assign var=preLev value=`$level`}--> 56 <!--{/if}--> 57 58 <!--{* セクションの最後に閉じタグを追加 *}--> 59 <!--{if $smarty.section.cnt.last}--> 60 <!--{if $preLev-1 > 0}--> 61 <!--{section name=d loop=`$preLev-1`}--> 62 </li> 63 </ul> 64 <!--{/section}--> 65 </li> 66 <!--{else}--> 67 </li> 68 <!--{/if}--> 69 <!--{/if}--> 70 <!--{/if}--> 71 <!--{/section}--> 72 </ul> 27 <!--{include file="`$smarty.const.SMARTPHONE_TEMPLATE_REALDIR`frontparts/bloc/category_tree_fork.tpl" children=$arrTree treeID="categorytreelist"}--> 73 28 74 29 <script>//<![CDATA[ -
branches/version-2_12-dev/data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_Category.php
r22567 r22586 132 132 $objQuery =& SC_Query_Ex::getSingletonInstance(); 133 133 $objDb = new SC_Helper_DB_Ex(); 134 134 135 $col = '*'; 135 136 $from = 'dtb_category left join dtb_category_total_count ON dtb_category.category_id = dtb_category_total_count.category_id'; … … 142 143 $objQuery->setOption('ORDER BY rank DESC'); 143 144 $arrRet = $objQuery->select($col, $from, $where); 145 146 $arrTree = SC_Utils_Ex::buildTree('category_id', 'parent_category_id', 10, $arrRet); 147 144 148 foreach ($arrParentCategoryId as $category_id) { 145 149 $arrParentID = $objDb->sfGetParents( … … 162 166 ); 163 167 $this->root_parent_id[] = $arrParentID[0]; 164 $arrDispID = array_merge($arrBrothersID, $arrChildrenID); 165 foreach ($arrRet as &$arrCategory) { 166 if (in_array($arrCategory['category_id'], $arrDispID)) { 167 $arrCategory['display'] = 1; 168 } 169 } 170 } 171 return $arrRet; 168 $this->arrDispID = array_merge($arrBrothersID, $arrChildrenID); 169 } 170 171 return $arrTree; 172 172 } 173 173 -
branches/version-2_12-dev/data/class/util/SC_Utils.php
r22567 r22586 1922 1922 return $return; 1923 1923 } 1924 1925 /** 1926 * 1927 * @param string $primary_key 1928 * @param string $glue_key 1929 * @param integer $max_depth 1930 * @param array $correction 1931 * @param integer $base_id 1932 * @return array ツリーの配列 1933 */ 1934 public static function buildTree($primary_key, $glue_key, $max_depth, $correction = array(), $base_id = 0) 1935 { 1936 $children = array(); 1937 foreach ($correction as $child) { 1938 $children[$child[$glue_key]][] = $child; 1939 } 1940 $arrTree = $children[$base_id]; 1941 foreach ($arrTree as &$child) { 1942 SC_Utils_Ex::addChild($child, $primary_key, 1, $max_depth, $children); 1943 } 1944 return $arrTree; 1945 } 1946 1947 /** 1948 * ツリーの親子をつなげるルーチン. 1949 * 1950 * @param array $target 親 1951 * @param string $primary_key 主キーの識別子 1952 * @param integer $level 親の階層 1953 * @param integer $max_depth 階層の深さの最大値 1954 * @param array $children 子の配列(キーが親ID) 1955 * @return void 1956 */ 1957 public static function addChild(&$target, $primary_key, $level, $max_depth, &$children = array()) 1958 { 1959 if (isset($children[$target[$primary_key]])) { 1960 $target['children'] = $children[$target[$primary_key]]; 1961 if ($level + 1 < $max_depth) { 1962 foreach ($target['children'] as &$child) { 1963 SC_Utils_Ex::addChild($child, $primary_key, $level++, $max_depth, $children); 1964 } 1965 } 1966 } 1967 } 1924 1968 } -
branches/version-2_12-dev/html/user_data/packages/sphone/js/category.js
r22091 r22586 92 92 var linkObj = document.createElement("a"); 93 93 linkObj.innerText = '+'; 94 tgt.childNodes[0].className="category_header plus"; 95 tgt.childNodes[0].appendChild(linkObj); 94 $(tgt).children('span.category_header') 95 .addClass('plus') 96 .append(linkObj); 96 97 j++; 97 98 linkObj.parentNode.setAttribute('onclick', 'listopen(' + lv + ',' + num + ')');
Note: See TracChangeset
for help on using the changeset viewer.