Skip to content
View in the app

A better way to browse. Learn more.

Web Designer Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

help with smarty/xcart/coding

Featured Replies

Hi all,

I am doing a website for a client that uses x-cart. Basically the client wants a vertical drop-down menu, demo can be found here : http://www.dynamicdrive.com/dynamicindex1/switchmenu.htm'>http://www.dynamicdrive.com/dynamicindex1/switchmenu.htm However the links the client wants are being pulled from the database, they are categories and sub-categories of products and I can't figure out how the loop of the category code fits in with the code for the drop-down menu, could somebody help?

 

Here is the code for the categories and sub-categories:

 

 

{capture name=menu}

{if $active_modules.Fancy_Categories}

{include file="modules/Fancy_Categories/categories.tpl"}

{assign var="additional_class" value="menu-fancy-categories-list"}

{else}

{assign var=thiscat value=$cat}

{assign var=par value=0}

{foreach from=$categories item=cats}

{assign var=Mcatid value=$cats.categoryid}

{foreach from=$allsubcategories.$Mcatid item=subb}

{if $subb.categoryid eq $thiscat}

{assign var=par value=$subb.parentid}

{/if}

{/foreach}

{/foreach}

<ul class="highlighted_orange">

{foreach from=$categories_menu_list item=c}

<li><a href="home.php?cat={$c.categoryid}" title="{$c.category|escape}">{$c.category}</a></li>

{assign var=in value=$c.categoryid}

{foreach from=$allsubcategories.$in item=cat}

{if $cat.parentid eq $c.categoryid}

<li><a href="home.php?cat={$cat.categoryid}" class="subMenuItem">{$cat.category}</a></li>

{/if}

{/foreach}

{/foreach}

</ul>

{assign var="additional_class" value="menu-categories-list"}

{/if}

{/capture}

{include file="customer/menu_dialog.tpl" content=$smarty.capture.menu}

 

 

Here is the code for the drop-down menu:

 

 

 

{literal}

<style type="text/css">

.menutitle{

cursor:pointer;

margin-bottom: 5px;

background-color:#ECECFF;

color:#000000;

width:140px;

padding:2px;

text-align:center;

font-weight:bold;

/*/*/border:1px solid #000000;/* */

}

 

.submenu{

margin-bottom: 0.5em;

}

</style>

 

<script type="text/javascript">

 

/***********************************************

* Switch Menu script- by Martial B of http://getElementById.com/

* Modified by Dynamic Drive for format & NS4/IE4 compatibility

* Visit http://www.dynamicdrive.com/ for full source code

***********************************************/

 

var persistmenu="yes" //"yes" or "no". Make sure each SPAN content contains an incrementing ID starting at 1 (id="sub1", id="sub2", etc)

var persisttype="sitewide" //enter "sitewide" for menu to persist across site, "local" for this page only

 

if (document.getElementById){ //DynamicDrive.com change

document.write('<style type="text/css">\n')

document.write('.submenu{display: none;}\n')

document.write('</style>\n')

}

 

function SwitchMenu(obj){

if(document.getElementById){

var el = document.getElementById(obj);

var ar = document.getElementById("masterdiv").getElementsByTagName("span"); //DynamicDrive.com change

if(el.style.display != "block"){ //DynamicDrive.com change

for (var i=0; i<ar.length; i++){

if (ar.className=="submenu") //DynamicDrive.com change

ar.style.display = "none";

}

el.style.display = "block";

}else{

el.style.display = "none";

}

}

}

 

function get_cookie(Name) {

var search = Name + "="

var returnvalue = "";

if (document.cookie.length > 0) {

offset = document.cookie.indexOf(search)

if (offset != -1) {

offset += search.length

end = document.cookie.indexOf(";", offset);

if (end == -1) end = document.cookie.length;

returnvalue=unescape(document.cookie.substring(offset, end))

}

}

return returnvalue;

}

 

function onloadfunction(){

if (persistmenu=="yes"){

var cookiename=(persisttype=="sitewide")? "switchmenu" : window.location.pathname

var cookievalue=get_cookie(cookiename)

if (cookievalue!="")

document.getElementById(cookievalue).style.display="block"

}

}

 

function savemenustate(){

var inc=1, blockid=""

while (document.getElementById("sub"+inc)){

if (document.getElementById("sub"+inc).style.display=="block"){

blockid="sub"+inc

break

}

inc++

}

var cookiename=(persisttype=="sitewide")? "switchmenu" : window.location.pathname

var cookievalue=(persisttype=="sitewide")? blockid+";path=/" : blockid

document.cookie=cookiename+"="+cookievalue

}

 

if (window.addEventListener)

window.addEventListener("load", onloadfunction, false)

else if (window.attachEvent)

window.attachEvent("onload", onloadfunction)

else if (document.getElementById)

window.onload=onloadfunction

 

if (persistmenu=="yes" && document.getElementById)

window.onunload=savemenustate

 

</script>

{/literal}

 

<!-- Keep all menus within masterdiv-->

<div id="masterdiv">

 

<div class="menutitle" onclick="SwitchMenu('sub1')">Site Menu</div>

<span class="submenu" id="sub1">

- <a href="new.htm">What's New</a><br>

- <a href="hot.htm">What's hot</a><br>

- <a href="revised.htm">Revised Scripts</a><br>

- <a href="morezone/">More Zone</a>

</span>

 

<div class="menutitle" onclick="SwitchMenu('sub2')">FAQ/Help</div>

<span class="submenu" id="sub2">

- <a href="notice.htm">Usage Terms</a><br>

- <a href="faqs.htm">DHTML FAQs</a><br>

- <a href="help.htm">Scripts FAQs</a>

</span>

 

<div class="menutitle" onclick="SwitchMenu('sub3')">Help Forum</div>

<span class="submenu" id="sub3">

- <a href="http://www.codingforums.com">Coding Forums</a><br>

</span>

 

<div class="menutitle" onclick="SwitchMenu('sub4')">Cool Links</div>

<span class="submenu" id="sub4">

- <a href="http://www.javascriptkit.com">JavaScript Kit</a><br>

- <a href="http://www.freewarejava.com">Freewarejava</a><br>

- <a href="http://www.cooltext.com">Cool Text</a><br>

- <a href="http://www.google.com">Google.com</a>

</span>

 

</div>

 

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.