SitePoint Sponsor

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 25 of 48
  1. #1
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    I really need some help with a tab menu

    here is the site that I'm trying to work on: www.yvib.com/alicia

    I would like to replace the top menu with a tabs menu, I have the tabs designed already with CSS, but I really don't know how to change it.

    Can somebody please please help me or give me some tips?

    thank you

  2. #2
    SitePoint Guru babyboy808's Avatar
    Join Date
    Nov 2004
    Location
    dublin
    Posts
    602
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Maybe this would be of help to you

    http://www.alistapart.com/articles/slidingdoors/

  3. #3
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    thanks for the tutorial, but I have the tabs already, I just don't know what lines to replace in the file. here is the code that I have to insert my tabs


    <td id="navigation"><!-- breadcrumbs -->
    <a accesskey="d" href="?L=users.desktop">My Desktop</a>
    <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    <a href="?L=contacts.contacts">My Contacts</a>
    <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    <a accesskey="s" href="?L=search.users">Search</a>
    <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    <a accesskey="b" href="?L=blogs.browse">Blogs</a>
    <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    <a href="?L=chat.chat">Chatrooms</a>
    <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    <a accesskey="f" href="?L=inkspot.index">Inkspot</a>
    <!-- /breadcrumbs --></td>

  4. #4
    SitePoint Member
    Join Date
    Dec 2006
    Posts
    21
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    If you have changed the menue with CSS you should really only have to link the stylesheet with the html document with <link rel="

  5. #5
    The CSS Clinic is open silver trophybronze trophy
    Paul O'B's Avatar
    Join Date
    Jan 2003
    Location
    Hampshire UK
    Posts
    40,526
    Mentioned
    182 Post(s)
    Tagged
    6 Thread(s)
    Hi,

    Do you have links to the images that you are using for your tabs so that we can see what you are working with.

    The sliding doors tutorial more or less tells you exactly what you need to do. You'd need to wrap that menu in a list structure to give you more hooks on which to hang your tabs. You would then put one side of the tab on the list element and the other side of the tab on the anchor element. This will allow them to stretch with text resize.

    There are many variables depending on whether the tab background rolls over on hover and in that case you need more inner elements in the anchor instead of using the list.

    This is probably the most complicated example you can get as it uses overlapping tabs.
    http://www.pmob.co.uk/Muller/hover/tab1.htm

  6. #6
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hey Paul, ok I attached the files. and here is a link to the original ones, mines are similar, just different color

    http://demo.rockettheme.com/

    and here is one code from a template_css file:

    /* @group menus */

    /* @group tab menu */

    #nav {
    height: 98px;
    position: relative;
    }

    #nav ul {
    padding: 0;
    margin: 0;
    margin-right: 35px;
    padding-top: 64px;
    float: right;
    }

    #nav li {
    margin: 0;
    padding: 0;
    float: left;
    display: block;
    padding-left: 12px;
    background: url(../images/tabs_reg_l.png) 0 0 no-repeat;
    }



    #nav a {
    display: block;
    float: left;
    height: 34px;
    line-height: 38px;
    padding: 0 20px 0 8px;
    text-decoration: none;
    cursor: pointer;
    background: url(../images/tabs_reg_r.png) 100% 0 no-repeat;
    font-weight: normal;

    }

    #nav a:link,
    #nav a:visited {
    color: #666;
    }

    #nav a:hover {
    color: #000;
    }

    #nav li.active_menu {
    /* see style css */
    }

    #nav li.active_menu a:link,
    #nav li.active_menu a:visited,
    #nav li.active_menu a:hover {
    /* see style css */
    }


    and now the other code for the active tabs is:

    #nav li.active_menu {
    background: url(../images/style6/tabs_active_l.png) 0 0 no-repeat;
    }

    #nav li.active_menu a:link,
    #nav li.active_menu a:visited,
    #nav li.active_menu a:hover {
    background: url(../images/style6/tabs_active_r.png) 100% 0 no-repeat;
    color: #fff;
    }




    I think this is all I need, but now, I can't figure out how to insert this CSS code into my other template. Sorry all for the newbie question, but I tried to fix it myself and after 10 hrs I gave up
    Attached Images Attached Images

  7. #7
    The CSS Clinic is open silver trophybronze trophy
    Paul O'B's Avatar
    Join Date
    Jan 2003
    Location
    Hampshire UK
    Posts
    40,526
    Mentioned
    182 Post(s)
    Tagged
    6 Thread(s)
    Hi,

    Something like this:

    Code:
    /* Navigation menu */
    #navigation {
      padding-left: 30px;
    }
    #navigation ul{
        list-style:none;
        margin:0;
        padding:0;
    }
    #navigation li{
        float:left;
        height:27px;
        padding-left:12px;
        background:url(images/tabs_reg_l.png) no-repeat left top;
    }
    #navigation a {
      font: 13px bold "Trebuchet MS", verdana, helvetica, arial, sans-serif;
      color: #515151;
      padding-right:14px;
      padding-left:2px;
            text-decoration: none;
      font-weight: bold;
            float:left;
         background:url(images/tabs_reg_r.png) no-repeat right top;
        height:20px;
        padding-top:7px;
    }
    #navigation li.current{    background:url(images/tabs_active_l.png) no-repeat left top;}
    #navigation li.current a{    background:url(images/tabs_active_r.png) no-repeat right top;}
    #navigation a:hover{color:#c00;}

    Code:
                        <td id="navigation"><!-- breadcrumbs -->
                            <ul>
                                <li class="current"><a accesskey="d" href="">My Desktop</a></li>
                                <li><a href="">My Contacts</a></li>
                                <li> <a accesskey="s" href="">Search</a></li>
                                <li><a accesskey="b" href="">Blogs</a></li>
                                <li><a href="">Chatrooms</a></li>
                                <li><a accesskey="f" href="">Inkspot</a></li>
                            </ul>
                            <!-- /breadcrumbs --></td>
    Replace the image paths with the correct ones of course

    Hope that helps

  8. #8
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    wow, thank youuuu. Everything seems to be working fine, but the hover part. When I click on the other tabs, the tab color stays the same

    www.yvib.com/alicia

    also, when I click on the tabs, I would like the text color to be FFFFFF. I changed some of the CSS but I didn't get it right.
    Last edited by horatiub; Dec 30, 2006 at 13:55.

  9. #9
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    can anybody take a look at this please?

  10. #10
    The CSS Clinic is open silver trophybronze trophy
    Paul O'B's Avatar
    Join Date
    Jan 2003
    Location
    Hampshire UK
    Posts
    40,526
    Mentioned
    182 Post(s)
    Tagged
    6 Thread(s)
    Hi,

    Sorry for the late rely but the message board didn't email me for some reason when you replied.

    I'm not sure what you want to happen on hover. The other menu you linked to had no hover effect so I assumed you wanted the same. If you want the whole tab to change colour on hover then its a little more involved as you have to nest a span in the anchor and use the anchor and the span for images in the same way that you used the list and the anchor. This is because you can only effect changes on hover when using an anchor in ie.

    If you are talking about changing the tab colour of the destination page then you need to change the current class in each page.

    e.g. For the contacts page you should add the current class to that list element and remove it from the first one.

    Code:
    <ul>
                                <li><a accesskey="d" href="">My Desktop</a></li>
                                <li class="current"><a href="">My Contacts</a></li>
                                <li> <a accesskey="s" href="">Search</a></li>
                                <li><a accesskey="b" href="">Blogs</a></li>
                                <li><a href="">Chatrooms</a></li>
                                <li><a accesskey="f" href="">Inkspot</a></li>
                            </ul>
    So ion the search page the menu would look like this:
    Code:
     <ul>
                                <li><a accesskey="d" href="">My Desktop</a></li>
                                <li><a href="">My Contacts</a></li>
                                <li class="current"> <a accesskey="s" href="">Search</a></li>
                                <li><a accesskey="b" href="">Blogs</a></li>
                                <li><a href="">Chatrooms</a></li>
                                <li><a accesskey="f" href="">Inkspot</a></li>
                            </ul>
    So on each destination page the current class is moved to the appropriate heading.

    I would like the text color to be FFFFFF.
    Then just change the anchor text to #fff here:
    Code:
    #navigation a {
      font: 13px bold "Trebuchet MS", verdana, helvetica, arial, sans-serif;
      color: #fff;
      padding-right:14px;
      padding-left:2px;
            text-decoration: none;
      font-weight: bold;
            float:left;
         background:url(images/tabs_reg_r.png) no-repeat right top;
        height:20px;
        padding-top:7px;
    }
    Hope it helps

  11. #11
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    no problem Paul, sorry for being so impatient, I apologize.

    "If you are talking about changing the tab colour of the destination page then you need to change the current class in each page."

    yes, that's what I meant, sorry about the confusion.

    Ok, I understood perfectly the code, but, the template has only 1 file called frame.tpl which has all the code in there, so I'm not sure what you meant by "For the contacts page you should add the current class to that list element and remove it from the first one."

    and thank you for being so patient

    and about the #fff, I actually wanted to be #fff only when the tab is selected(active)

  12. #12
    The CSS Clinic is open silver trophybronze trophy
    Paul O'B's Avatar
    Join Date
    Jan 2003
    Location
    Hampshire UK
    Posts
    40,526
    Mentioned
    182 Post(s)
    Tagged
    6 Thread(s)
    Hi,

    I'm not quite sure what you are saying but is sounds like you cannot change the code on individual pages. Is this correct?

    If for example the menu is an include then you won't be able to add classes to the appropriate elements on each page.

    I think you may also be confusing the :active pseudo class with the destination of a link. They do not have anything in common at all and all the :active pseudo link does is to allow the :active state to be styled.

    The :active state is only that exact instance when you click the mouse button. When you release the mouse button it is no longer active. It has nothing to do with the destination of the link and purely applies to the state when you click it as being active for that instant only.

    To have the text white on the currently selected page you would need to change the css in the current link class.

    e.g.
    Code:
    #navigation li.current a{color:#fff}
    However if you are unable to move that class to the relevant item on each page then you cannot use that method at all anyway.

    If the menu is an include then you won't be able to style the current pages link at all unless you can also add a class to the body tag and that you can change that body class on each page also.

    If you can't change anything then you are stuck to some server side solution or javascript solution.

    Here is an example using the body tag to set the nav identity.

    http://www.pmob.co.uk/temp/nav-body3.htm

    The nav never changes but the class in the body tag does and this is used to set the current page selection.

  13. #13
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    yes, I don't think I can change it on individual pages. I think this is how this theme is suppose to work. It has a main file, frame.tpl and a style.css but I don't see any other files, like for example search.php or contacts.php etc...

    I'm not sure if I explained it well. Basically, what I want is the tab color to be blue after I clicked on the search page or my contacts page for example, so that it reflects the page that I'm on right now. Does this make sense?

  14. #14
    The CSS Clinic is open silver trophybronze trophy
    Paul O'B's Avatar
    Join Date
    Jan 2003
    Location
    Hampshire UK
    Posts
    40,526
    Mentioned
    182 Post(s)
    Tagged
    6 Thread(s)
    Basically, what I want is the tab color to be blue after I clicked on the search page or my contacts page for example, so that it reflects the page that I'm on right now. Does this make sense?
    I suggest you re-read my posts above as we are going around in circles here

    I have explained exactly what you need to do and how it is achieved.

    Look at this example:

    http://www.pmob.co.uk/temp/nav-body3.htm

    Click on each link and the link is highlighted for the current page. Is that not what you were talking about?

  15. #15
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    yes Paul, that's exactly what I meant. I'm re-reading your post and trying to understand it. I'll figure it out eventually

    thank you so much for your help and Happy New Year

  16. #16
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I gave up Paul, I'll just leave it the way it is since I can't seem to figure it out.

    Your example was a little different since the color of the tab changes on hover right?

    I think in my case, when the current class is active, then the tabs_active_l.png should come up, but it doesn't.


    Code:
    /* Navigation menu */
    #navigation {
      padding-left: 30px;
    }
    #navigation ul{
        list-style:none;
        margin:0;
        padding:0;
    }
    #navigation li{
        float:left;
        height:27px;
        padding-left:12px;
        background:url(images/tabs_reg_l.png) no-repeat left top;
    }
    #navigation a {
      font: 13px bold "Trebuchet MS", verdana, helvetica, arial, sans-serif;
      color: #515151;
      padding-right:14px;
      padding-left:2px;
            text-decoration: none;
      font-weight: bold;
            float:left;
         background:url(images/tabs_reg_r.png) no-repeat right top;
        height:20px;
        padding-top:7px;
    }
    #navigation li.current{    background:url(images/tabs_active_l.png) no-repeat left top;}
    #navigation li.current a{    background:url(images/tabs_active_r.png) no-repeat right top;}
    #navigation a:hover{color:#c00;}
    #navigation li.current a{color:#fff}

    here is the whole frame.tpl file, the menu navigation is all entered in the body tag

    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>{siteName}</title>
    <script type="text/javascript" src="{themePath}/javascript.js"></script>
    <link href="{themePath}/style.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <!-- header --><!-- /header -->
    <table width="855" border="0" align="center" cellpadding="0" cellspacing="0" class="fullheight">
      <tr>
        <td height="160" colspan="2" valign="top" background="{themePath}/images/frame/header.gif"><table width="100%" height="135" border="0" cellpadding="0" cellspacing="0">
            <tr>
              <td height="122" align="left" valign="top"><img src="{themePath}/images/frame/logo.gif" alt="Logo" width="245" height="122" /></td>
              <td height="122" align="center" valign="bottom"><div id="laneContainer"></div></td>
            </tr>
            <tr>
             <td id="navigation"><!-- breadcrumbs -->
                            <ul>
                                <li class="current"><a accesskey="d" href="?L=users.desktop">My Desktop</a></li>
                                <li><a href="?L=contacts.contacts">My Contacts</a></li>
                                <li> <a accesskey="s" href="?L=search.users">Search</a></li>
                                <li><a accesskey="b" href="?L=blogs.browse">Blogs</a></li>
                                <li><a href="?L=chat.chat">Chatrooms</a></li>
                                <li><a accesskey="f" href="?L=inkspot.index">Inkspot</a></li>
                            </ul>
                            <!-- /breadcrumbs --></td>
              <td align="right" id="usercontrol">
    		    <ZONE userStatus guest>
    			  <a href="?L">Login</a> 
                  <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    			  <a href="?L=registration.register">Register</a>		    </ZONE userStatus guest>
    			<ZONE adminLink enabled>
    			  <a href="?L=admin.index">Admin</a>
    			  <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    			</ZONE adminLink enabled>
    			<ZONE adminLink disabled></ZONE adminLink disabled>
    			<ZONE userStatus user>
    			<a href="?logout=true">Logout</a>
    			<img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    			</ZONE userStatus user>
              <a accesskey="h" href="javascript:popUp('?L=help.help&chromeless=1&origin={system.l}');">Help</a></td>
            </tr>
        </table></td>
      </tr>
      <tr>
        <td colspan="2" valign="top" bgcolor="#FFFFFF">{jump}</td>
      </tr>
      <tr>
        <td height="5" colspan="2" background="{themePath}/images/frame/greenbar.gif"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="5" /></td>
      </tr>
      <tr>
        <td width="60%" height="160" valign="top" bgcolor="#031545">
    	<div style="padding:15px;">
    	
    	<div id="footer_elements">
    	  <ZONE footer_element empty>	
    	    <table width="450" border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td>&nbsp;</td>
              </tr>
            </table>
    	  </ZONE footer_element empty>
    	  <ZONE footer_element random_users>	
    	    <table width="450" border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td><h1><span class="footerColorSet1">Some</span> <span class="footerColorSet2">Random Members</span></h1></td>
                <td align="right" valign="middle" style="padding-right:8px;">
    		      <a href="Javascript:ajFetch('?proc_footer_element=notepad', 'footer_elements', false, 0);"><img src="{themePath}/images/frame/notepad_icon.gif" alt="Notepad" title="Notepad!" width="21" height="22" /></a> 
    			  <a href="Javascript:ajFetch('?proc_footer_element=random', 'footer_elements', false, 0);"><img src="{themePath}/images/frame/cycle_icon.gif" alt="Randomize!" title="Randomize!" width="27" height="24" /></a>			</td>
              </tr>
              <tr>
                <td colspan="2">
    	          <LOOP footerQuery>
                    <div style="float:left; padding-right:6px; clear:none;">
                      <a href="?L=users.profile&id={user.id}">
                        <img src="system/image.php?file={user.mainpicture}" alt="Picture" hspace="2" border="0" id="picture" />
    			      </a>
                      <br />
                      <a href="?L=users.profile&id={user.id}">{user.username}</a>
    		        </div>
                  </LOOP footerQuery>
                </td>
              </tr>
            </table>
    	  </ZONE footer_element random_users>
    	  <ZONE footer_element notepad>	
    	    <table width="450" border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td><h1><span class="footerColorSet1">My</span> <span class="footerColorSet2">Notepad</span></h1></td>
                <td align="right" valign="middle" style="padding-right:8px;">
    		      <a href="Javascript:ajFetch('?proc_footer_element=notepad', 'footer_elements', false, 0);"><img src="{themePath}/images/frame/notepad_icon.gif" alt="Notepad" title="Notepad!" width="21" height="22" /></a> 
    		      <a href="Javascript:ajFetch('?proc_footer_element=random', 'footer_elements', false, 0);"><img src="{themePath}/images/frame/cycle_icon.gif" alt="Randomize!" title="Randomize!" width="27" height="24" /></a>			</td>
              </tr>
              <tr>
                <td colspan="2">
    	          <ZONE notepad guest>
    			    <span class="footerColorSet1">Sorry you have to be logged in in order to use the notepad</span>
    			  </ZONE notepad guest>
    			  
    			  <ZONE notepad enabled>
    			    <form method="post">
    				  <textarea name="notepad_body" id="notepad_body" rows="3" class="fullwidth" onkeydown="notepadStateChange();">{notepad_content}</textarea>
    			      <br />
    			      <input type="button" name="Submit" value="Save" class="submit_disabled" id="notepad_save_button" disabled="disabled" onclick="saveNotepad();" />
    			    </form>
    			  </ZONE notepad enabled>
                </td>
              </tr>
            </table>
    	  </ZONE footer_element notepad>
    	</div>
    
    
    	</div>
    	<!-- leftfooterblock --><!-- /leftfooterblock -->
    	</td>
        <td width="40%" valign="top" bgcolor="#031545"><div style="padding:15px;">
          <h1><span class="footerColorSet1">Important</span> <span class="footerColorSet2">References</span><br />
          </h1>
    	  <table width="100%" border="0" cellspacing="2" cellpadding="0">
            <tr>
              <td><a href="?L=invite.tellafriend&amp;origin={system.origin}" class="footerColorSet1">Tell a friend / Invite a friend </a></td>
            </tr>
            <tr>
              <td height="1" bgcolor="#003366"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
            </tr>
            <tr>
              <td><a href="?L=info.contact" class="footerColorSet1">Contact us / Report Abuse </a></td>
            </tr>
            <tr>
              <td height="1" bgcolor="#003366"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
            </tr>
            <tr>
              <td><a href="Javascript:bookmark('{siteName}', '{siteURL}')" class="footerColorSet1">Bookmark us </a></td>
            </tr>
            <tr>
              <td height="1" bgcolor="#003366"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
            </tr>
            <tr>
              <td><a href="?L=info.terms" class="footerColorSet1">Privacy policy &amp; terms of use </a></td>
            </tr>
          </table>
    	  <!-- references --><!-- /references -->
        </div>
    	<!-- rightfooterblock --><!-- /rightfooterblock -->
    	</td>
      </tr>
      <tr>
        <td height="2" colspan="2" bgcolor="#000000"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="2" /></td>
      </tr>
      <tr>
        <td height="65" colspan="2" bgcolor="#020B32"><table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td valign="middle" id="copyright" style="padding-left:25px;"><a href="http://www.phpizabi.net" target="_blank" id="copyright">Powered by {systemVersion}</a><br />            
              &copy; 2005, 2006 - <a href="http://www.realitymedias.com" target="_blank" id="copyright">Real!ty Medias</a>, All rights reserved </td>
              <td align="right">
    		    <a href="http://www.phpizabi.net"><img src="{themePath}/images/frame/phpizabi.gif" hspace="25" /></a></td>
            </tr>
          </table></td>
      </tr>
    </table>
    <!-- footer -->
    <!-- /footer -->
    <script language="javascript" type="text/javascript">
      launchLANE();
      setTimeout('ajFetch(\'?L=&proc_footer_element=random\', \'footer_elements\', true, 300000);', 300000);
    </script>
    </body>
    </html>

  17. #17
    The CSS Clinic is open silver trophybronze trophy
    Paul O'B's Avatar
    Join Date
    Jan 2003
    Location
    Hampshire UK
    Posts
    40,526
    Mentioned
    182 Post(s)
    Tagged
    6 Thread(s)
    lol - I don't think any of this is sinking it yet is it ?
    I think in my case, when the current class is active, then the tabs_active_l.png should come up, but it doesn't.
    Yes it is working if you look at your home page here: http://www.yvib.com/alicia/ You will see that the My Desktop link is showing the correct colour for the current page because the current class is set on the parent list for that link.
    Code:
      <li class=&quot;current&quot;>My Desktop
    If you wanted the My Contacts link to be coloured blue when on the my contacts page then you would need to move the current class into the list as follows.
    Code:
     My Desktop
                                  <li class=&quot;current&quot;>My Contacts
    However you have already stated that your menu html can't be changed on each page. Therefore I showed you a method that words by adding a class to the body tag on each page to reflect the change of page. The fact that my example changes on hover has nothing to do with it at all On the third nav link I have added a class of section3 to the body tag. This enables the third item to be styled only when that class is added to the body. On other pages you would change the body tag to reflect the page that you are on.
    Code:
      body.section1 #nav li.one, body.section2 #nav li.two, body.section3 #nav li.three, body.section4 #nav li.four, body.section5 #nav li.five, body.section6 #nav li.six, body.section7 #nav li.seven {background:#ffffcc;}     Current link indicated via class in the body
    
     
    You would need to add that sort of structure to your page to get it working. However you haven't said whether you can add classes to the body tag on each page so I won't give full code until I am sure what you can and cannot do.
    Edit:

    I'm not sure what's going on with the message board today as its corrupting my replies

  18. #18
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    apparently is not sinking it yet, but I'm almost there with your help lol

    ok, so I can add the code to each individual page, even though there is no head or body sections defined there so far.

    here is an example of the search.tpl page

    Code:
    <!-- header --><!-- /header -->
    <table width="100&#37;" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td width="530">&nbsp;</td>
        <td rowspan="2">&nbsp;</td>
        <td width="290">&nbsp;</td>
      </tr>
      <tr>
        <td width="530" valign="top">
    	<!-- leftpane --><form method="get">
    	<table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td width="25">&nbsp;</td>
            <td colspan="2"><table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td valign="top"><h1>[Search Users {7755}] </h1>
                        <p>[Trying to find someone that shares your interests  or matches what you&rsquo;re searching for?&nbsp;  Use the following options below to help narrow your search, and provide  you with the best possible results. {7760}]</p><!-- breadcrumbs -->
    <!-- /breadcrumbs --></td>
                      <td align="right" valign="top"><img src="theme/default/images/icons/headers/search_users.gif" alt="[Calendar {350}]" width="100" height="100" /></td>
                    </tr>
                  </table>          </td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td colspan="2">&nbsp;</td>
          </tr>
          <tr>
            <td height="1" colspan="3" bgcolor="#E5E9EC"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
          </tr>
          <tr>
            <td height="8" colspan="3"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="8" /></td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td colspan="2">
    		<ZONE searchResultsHeader enabled><strong>[Your search produced {results.countTotal} result(s) {7765}]</strong></ZONE searchResultsHeader enabled>
    		<ZONE searchResultsHeader noResult><strong>[Your search produced no result {7770}]</strong></ZONE searchResultsHeader noResult>
    		<ZONE searchResultsHeader disabled>[Please fill in your search criteria below {7775}]		</ZONE searchResultsHeader disabled>		</td>
          </tr>
          <tr>
            <td height="8" colspan="3"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="8" /></td>
          </tr>
          <tr>
            <td colspan="3" background="theme/default/images/frame/block_border_top.gif" bgcolor="#AEC5FD"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="14" /></td>
          </tr>
          <tr>
            <td bgcolor="#DCE6FF">&nbsp;</td>
            <td colspan="2" bgcolor="#DCE6FF">&nbsp;</td>
          </tr>
          <tr>
            <td bgcolor="#DCE6FF">&nbsp;</td>
            <td colspan="2" bgcolor="#DCE6FF"><div class="tabber">
              
                  <div class="tabbertab">
                    <h2>[Search {300}]</h2>
    				<table width="100%" border="0" cellspacing="3" cellpadding="0">
                      <tr>
                        <td><input type="hidden" name="L" value="search.users" />
                        <input name="query" type="text" id="query" class="fullwidth" /></td>
                        <td><select name="gender" id="gender">
                          <option value="">Any gender</option>
                          <LOOP genderOptionDropdown>
                            <option value="{gender.option}">{gender.option}</option>
                          </LOOP genderOptionDropdown>
                        </select></td>
                      </tr>
                      <tr>
                        <td colspan="2" valign="top">
    					<label><input name="pattern" type="radio" value="or" checked="checked" /> [At least one word {165}] </label>
    					<label><input name="pattern" type="radio" value="and" /> [All the words {170}]</label> 
    					<label><input name="pattern" type="radio" value="all" /> [As a phrase {175}] </label>					</td>
                        </tr>
                      <tr>
                        <td width="50%" valign="top">&nbsp;</td>
                        <td valign="top">&nbsp;</td>
                      </tr>
                      <tr>
                        <td valign="top"><strong>[Only show {177}]</strong><br>
                          <p>
                            <label><input name="picture" type="checkbox" value="1" /> [Users with a picture {660}] </label>
                            <label><br>
                            <input name="online" type="checkbox" id="online" value="1" /> [Online users {665}]</label>
    					  </p>                      </td>
                        <td valign="top"><p><strong>[With age between {670}]</strong><br />    
                            <input name="agelow" type="text" id="agelow" size="3" />
                            [and {675}]
                            <input name="agehigh" type="text" id="agehigh" size="3" />
                          [years old {680}] <br />
                          <br />
                          <strong>[Within a range of {685}] <br />
                          </strong><input name="range" type="text" id="range" size="3" />
                          <ZONE distanceLabel miles>[miles {690}]</ZONE distanceLabel miles>
    					  <ZONE distanceLabel kilometers>[kilometers {695}]</ZONE distanceLabel kilometers>
                        </p>
                          </td>
                      </tr>
                      <tr>
                        <td valign="top"><p>
                          <input name="Submit" type="submit" id="Submit" value="[Search {300}]" class="submit" />
                        </p>
                          <br></td>
                        <td valign="top">&nbsp;</td>
                      </tr>
                    </table>
    
                    <p>&nbsp;</p>
                  </div>
    			  
    			   <div class="tabbertab">
                    <h2>[Advanced {700}]</h2>
    				<table width="100%" border="0" cellspacing="3" cellpadding="0">
    
                      <tr>
                        <td width="50%" valign="top"><strong>[Search in {705}]</strong><br>
                          <label><input name="sin[]" type="checkbox" value="username" checked="checked" /> 
                          [Usernames {710}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="city" checked="checked" /> 
                          [City {715}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="state" checked="checked" /> 
                          [State {720}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="country" checked="checked" /> 
                          [Country {725}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="quote" checked="checked" /> 
                          [User quote {730}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="header" checked="checked" /> 
                          [User header {735}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="profile" checked="checked" /> 
                          [Profile data {740}]</label>					</td>
                        <td valign="top"><p><strong>[Order by {220}]</strong><br>
                          <input name="order" type="radio" value="username" checked="checked" />
                            [Username {745}]<br>
                            <input name="order" type="radio" value="last_login" />
                            [Last login {750}]<br>
                            <input name="order" type="radio" value="last_load" />
                            [Online/Offline {755}]<br>
                            <input name="order" type="radio" value="id" />
                            [Registration date {760}]<br>
                            <input name="order" type="radio" value="age" />
                            [Age {765}]<br>
                            <strong>[Direction {225}]</strong>  <br>
                            <input name="direction" type="radio" value="asc" checked />
                            [Ascending {230}]<br>
                            <input name="direction" type="radio" value="desc" /> 
                            [Descending {235}] 
                            <br>
                          <br>
    </p>                      </td>
                      </tr>
    
                      <tr>
                        <td valign="top"><p>
                            <input name="submit" type="submit" id="submit" value="[Search {300}]" class="submit" />
                          </p>
                            <br></td>
                        <td valign="top">&nbsp;</td>
                      </tr>
                    </table>
    			   </div>
              
            </div></td>
          </tr>
          <tr>
            <td height="2" colspan="3" bgcolor="#DCE6FF"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="2" /></td>
          </tr>
          <tr>
            <td colspan="3" background="theme/default/images/frame/block_border_bottom.gif" bgcolor="#AEC5FD"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="14" /></td>
          </tr>
          <tr>
            <td height="10" colspan="3"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="10" /></td>
          </tr>
          <ZONE searchResultsBlock enabled>
    	  <tr>
    		<td>&nbsp;</td>
            <td><h1>[Your Search Results {240}] </h1></td>
            <td align="right">[Page {page.thisPage} out of {page.total} {7780}] </td>
          </tr>
          <tr>
            <td height="5"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="5" /></td>
            <td height="5" colspan="2" background="{themePath}/images/frame/greenbar.gif" bgcolor="#C0FF5E"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="5" /></td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td colspan="2">
              <LOOP searchResultsLoop>
                <table width="100%" cellpadding="0" cellspacing="3">
                  <tr>
                    <td colspan="2" valign="top" style="padding-top:5px;" width="80"><a href="?L=users.profile&id={user.id}"> <img src="system/image.php?file={user.mainpicture}" alt="[Picture {150}]" border="0" id="picture" /> </a><br />
                      <a href="?L=users.profile&id={user.id}">{user.username}</a> </td>
                    <td width="100%" valign="top"><h4>{user.quote}</h4>
                        <h6>[{user.username}, {user.gender}, {user.age} years old {7785}] </h6>
                        <p>{user.header}...</p>
                        <h6>[Last login: {750}] <img src="{themePath}/images/icons/date.gif" alt="[Date {135}]" width="16" height="16" hspace="2" align="absmiddle" /> {user.lastlogin} </h6></td>
                    <td width="20" align="right" valign="middle"><OBJ online> <img src="{themePath}/images/icons/status/online_mini.gif" alt="[Online {425}]" /> </OBJ online>
                      {user.online}</td>
                  </tr>
                </table>
              </LOOP searchResultsLoop>		  </td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td colspan="2" align="center">
    		
    		<ZONE paginationBlock enabled>
    		  <ZONE pagination.back disabled>&laquo; [Back {255}]</ZONE pagination.back disabled>
    		  <ZONE pagination.back linked><a href="{pagination.back.link}">&laquo; [Back {255}]</a></ZONE pagination.back linked>
    		
    		  <ZONE pagination.first disabled></ZONE pagination.first disabled>
    		  <ZONE pagination.first linked><a href="{pagination.first.link}">1...</a> </ZONE pagination.first linked>
    		
    		  <OBJ pagination.unlinked.page><strong>{pagination.page.pageNumber}</strong></OBJ pagination.unlinked.page>
    		  <OBJ pagination.linked.page> <a href="{pagination.page.link}">{pagination.page.pageNumber}</a> </OBJ pagination.linked.page>
    		
    		  {pagination.pages}
    
    		  <ZONE pagination.last disabled></ZONE pagination.last disabled>
    		  <ZONE pagination.last linked><a href="{pagination.last.link}">...{pagination.last.pageNumber}</a> </ZONE pagination.last linked>
    
    		  <ZONE pagination.next disabled>[Next {260}] &raquo;</ZONE pagination.next disabled>
    		  <ZONE pagination.next linked><a href="{pagination.next.link}">[Next {260}] &raquo;</a></ZONE pagination.next linked>
    		</ZONE paginationBlock enabled>
    
    		<ZONE paginationBlock disabled>
    		</ZONE paginationBlock disabled>
    		
    		</td>
          </tr>
          </ZONE searchResultsBlock enabled>
        </table>
    	</form><!-- /leftpane -->
    	</td>
        <td width="290" valign="top"><!-- rightpane --><table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td><h1>[My Saved Searches {265}] </h1>
              <p>[Make your searching faster and easier by saving your searches for a one click operation. {270}]</p>
    		  <br /><br />
              
     		  <ZONE savedSearchesList enabled>
    		    <h4>[My saved searches {265}] </h4>
    		    <table width="100%" border="0" cellspacing="0" cellpadding="0">
                  <LOOP favoriteSearches>
    			    <tr>
                      <td><a href="{get}">{name}</a></td>
                      <td align="right"><a href="?L=search.users&rm={key}">Remove</a></td>
                    </tr>
    			  </LOOP favoriteSearches>
                </table>
    		    <br /><br />
    		  </ZONE savedSearchesList enabled>
    		  
      		  <ZONE savedSearchesList disabled>
    		  </ZONE savedSearchesList disabled>
    		  
    		  <ZONE saveThisSearch enabled>
                <form method="post">
                  <table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td colspan="2"><h4>[Save this search {7790}] </h4></td>
                    </tr>
                    <tr>
                      <td>[Name your search: {7795}]                    </td>
                      <td><input name="name" type="text" id="name" maxlength="25" /></td>
                    </tr>
                    <tr>
                      <td colspan="2"><input name="SaveSearch" type="submit" id="SaveSearch" value="[Save {640}]" class="submit" /></td>
                    </tr>
                  </table>
                </form>
     		  </ZONE saveThisSearch enabled>
    
              </td>
            <td width="25">&nbsp;</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="5" colspan="2" background="{themePath}/images/frame/greenbar.gif"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="5" /></td>
          </tr>
          <tr>
            <td height="8" colspan="2"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="8" /></td>
          </tr>
          <tr>
            <td><h2>[Other Search Options {7800}] </h2>
              <p><a href="?L=search.online">[Online Users {7805}]</a><br />
                <a href="?L=blogs.search">[Search in Blogs {7810}]</a> </p>
              <p>&nbsp;</p>
              <p><a href="?L=search.match">[Match me! {7815}]</a></p></td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td><p>&nbsp;</p>          </td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="8" colspan="2"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="8" /></td>
          </tr>
          <tr>
            <td height="1" colspan="2" bgcolor="#E5E9EC"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
          </tr>
        </table><!-- /rightpane --></td>
      </tr>
    </table>
    <br>
    <br>
    <OBJ resultsBlockGridMode>
      <div style="float:left;">
        <a href="?L=users.profile&amp;id={id}">
          <img src="system/image.php?file={mainpicture}" alt="[Picture {150}]" hspace="2" border="0" id="picture" />
        </a>
        <br />
        <a href="?L=users.profile&amp;id={id}">{username}</a>
    </div>
      <br />
    </OBJ resultsBlockGridMode><!-- footer --><!-- /footer -->

  19. #19
    The CSS Clinic is open silver trophybronze trophy
    Paul O'B's Avatar
    Join Date
    Jan 2003
    Location
    Hampshire UK
    Posts
    40,526
    Mentioned
    182 Post(s)
    Tagged
    6 Thread(s)
    Hi,

    I'm not sure you are going to be able to follow this

    Here is the extra css:
    Code:
    body.page1 #navigation li.one,
    body.page2 #navigation li.two,
    body.page3 #navigation li.three,
    body.page4 #navigation li.four,
    body.page5 #navigation li.five,
    body.page6 #navigation li.six {
    background:url(images/tabs_active_l.png) no-repeat left top;
    }
    
    body.page1 #navigation li.one a,
    body.page2 #navigation li.two a,
    body.page3 #navigation li.three a,
    body.page4 #navigation li.four a,
    body.page5 #navigation li.five a,
    body.page6 #navigation li.six a {
     background:url(images/tabs_active_r.png) no-repeat right top;
        color:#fff;
    }
    Here is the html for the navigation that should remain the same on all pages and now has classes in each list item as follows.

    Code:
    <td id="navigation"><!-- breadcrumbs -->
        <ul>
            <li class="one"><a accesskey="d" href="?L=users.desktop">My Desktop</a></li>
            <li class="two"><a href="?L=contacts.contacts">My Contacts</a></li>
            <li class="three"> <a accesskey="s" href="?L=search.users">Search</a></li>
            <li class="four"><a accesskey="b" href="?L=blogs.browse">Blogs</a></li>
            <li class="five"><a href="?L=chat.chat">Chatrooms</a></li>
            <li class="six"><a accesskey="f" href="?L=inkspot.index">Inkspot</a></li>
        </ul>
        <!-- /breadcrumbs --></td>
    Now comes the important part so pay attention

    In each body tag on each different page you will need to add a class so that the current page can be identified.

    For your home pages (My desktop) the body tag would be like this:

    Code:
    <body class="page1">
    When you are on the My Contacts page then you will need to change the body class accordingly.

    Code:
    <body class="page2">
    Search pages = <body class="page3">
    Blogs pages = <body class="page4">
    Chatrooms pages = <body class="page5">
    Inkspots pages = <body class="page6">

    I hope you can follow all that

  20. #20
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I think I got it:

    1. add the code to the CSS file
    2. change the menu in the frame.tpl file
    3. add <body class="page1"> etc.. to all the other pages, e.g search.tpl, desktop.tpl


    just one thing: I don't have to add the menu code to all those pages right?

    the only thing that is weird that those search.tpl page and the others have no body or head defined, but I guess I can define them.

  21. #21
    padawan silver trophybronze trophy markbrown4's Avatar
    Join Date
    Jul 2006
    Location
    Victoria, Australia
    Posts
    4,117
    Mentioned
    28 Post(s)
    Tagged
    2 Thread(s)
    just one thing: I don't have to add the menu code to all those pages right?
    The solution that Paul gave you can be the same on all pages, Wherever the menu template page is put the menu there - Step 2 above should cover it.
    the only thing that is weird that those search.tpl page and the others have no body or head defined, but I guess I can define them.
    That is because they are just part of the overall page.. I can't be sure because I haven't seen your php code because I haven't seen it before it's rendered.
    My guess is on 'index.php' you have a series of php includes throughout the page that is simply copying the .tpl files into the final page.
    They will look something like
    Code:
    <?php virtual(../frame.tpl); ?>
    So the doctype doesn't need to be repeated in each section of the page - just at the top, and only once

  22. #22
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    already then so here is my final code Mark and Paul

    frame.tpl -where the template menu is defined

    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>{siteName}</title>
    <script type="text/javascript" src="{themePath}/javascript.js"></script>
    <link href="{themePath}/style.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <body class="page1">
    <!-- header --><!-- /header -->
    <table width="855" border="0" align="center" cellpadding="0" cellspacing="0" class="fullheight">
      <tr>
        <td height="160" colspan="2" valign="top" background="{themePath}/images/frame/header.gif"><table width="100%" height="135" border="0" cellpadding="0" cellspacing="0">
            <tr>
              <td height="122" align="left" valign="top"><img src="{themePath}/images/frame/logo.gif" alt="Logo" width="245" height="122" /></td>
              <td height="122" align="center" valign="bottom"><div id="laneContainer"></div></td>
            </tr>
            <tr>
             <td id="navigation"><!-- breadcrumbs -->
        <ul>
            <li class="one"><a accesskey="d" href="?L=users.desktop">My Desktop</a></li>
            <li class="two"><a href="?L=contacts.contacts">My Contacts</a></li>
            <li class="three"> <a accesskey="s" href="?L=search.users">Search</a></li>
            <li class="four"><a accesskey="b" href="?L=blogs.browse">Blogs</a></li>
            <li class="five"><a href="?L=chat.chat">Chatrooms</a></li>
            <li class="six"><a accesskey="f" href="?L=inkspot.index">Inkspot</a></li>
        </ul>
        <!-- /breadcrumbs --></td>
              <td align="right" id="usercontrol">
    		    <ZONE userStatus guest>
    			  <a href="?L">Login</a> 
                  <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    			  <a href="?L=registration.register">Register</a>		    </ZONE userStatus guest>
    			<ZONE adminLink enabled>
    			  <a href="?L=admin.index">Admin</a>
    			  <img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    			</ZONE adminLink enabled>
    			<ZONE adminLink disabled></ZONE adminLink disabled>
    			<ZONE userStatus user>
    			<a href="?logout=true">Logout</a>
    			<img src="{themePath}/images/frame/menu_separator.gif" hspace="2" align="absmiddle" />
    			</ZONE userStatus user>
              <a accesskey="h" href="javascript:popUp('?L=help.help&chromeless=1&origin={system.l}');">Help</a></td>
            </tr>
        </table></td>
      </tr>
      <tr>
        <td colspan="2" valign="top" bgcolor="#FFFFFF">{jump}</td>
      </tr>
      <tr>
        <td colspan="2" height="5" style="background: #00AFF0"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="5"></td>
      </tr>
      <tr>
        <td width="60%" height="160" valign="top" bgcolor="#ffffff">
    	<div style="padding:15px;">
    	
    	<div id="footer_elements">
    	  <ZONE footer_element empty>	
    	    <table width="450" border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td>&nbsp;</td>
              </tr>
            </table>
    	  </ZONE footer_element empty>
    	  <ZONE footer_element random_users>	
    	    <table width="450" border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td><h1><span class="footerColorSet1">Some</span> <span class="footerColorSet2">Random Members</span></h1></td>
                <td align="right" valign="middle" style="padding-right:8px;">
    		      <a href="Javascript:ajFetch('?proc_footer_element=notepad', 'footer_elements', false, 0);"><img src="{themePath}/images/frame/notepad_icon.gif" alt="Notepad" title="Notepad!" width="21" height="22" /></a> 
    			  <a href="Javascript:ajFetch('?proc_footer_element=random', 'footer_elements', false, 0);"><img src="{themePath}/images/frame/cycle_icon.gif" alt="Randomize!" title="Randomize!" width="27" height="24" /></a>			</td>
              </tr>
              <tr>
                <td colspan="2">
    	          <LOOP footerQuery>
                    <div style="float:left; padding-right:6px; clear:none;">
                      <a href="?L=users.profile&id={user.id}">
                        <img src="system/image.php?file={user.mainpicture}" alt="Picture" hspace="2" border="0" id="picture" />
    			      </a>
                      <br />
                      <a href="?L=users.profile&id={user.id}">{user.username}</a>
    		        </div>
                  </LOOP footerQuery>
                </td>
              </tr>
            </table>
    	  </ZONE footer_element random_users>
    	  <ZONE footer_element notepad>	
    	    <table width="450" border="0" cellpadding="0" cellspacing="0">
              <tr>
                <td><h1><span class="footerColorSet1">My</span> <span class="footerColorSet2">Notepad</span></h1></td>
                <td align="right" valign="middle" style="padding-right:8px;">
    		      <a href="Javascript:ajFetch('?proc_footer_element=notepad', 'footer_elements', false, 0);"><img src="{themePath}/images/frame/notepad_icon.gif" alt="Notepad" title="Notepad!" width="21" height="22" /></a> 
    		      <a href="Javascript:ajFetch('?proc_footer_element=random', 'footer_elements', false, 0);"><img src="{themePath}/images/frame/cycle_icon.gif" alt="Randomize!" title="Randomize!" width="27" height="24" /></a>			</td>
              </tr>
              <tr>
                <td colspan="2">
    	          <ZONE notepad guest>
    			    <span class="footerColorSet1">Sorry you have to be logged in in order to use the notepad</span>
    			  </ZONE notepad guest>
    			  
    			  <ZONE notepad enabled>
    			    <form method="post">
    				  <textarea name="notepad_body" id="notepad_body" rows="3" class="fullwidth" onkeydown="notepadStateChange();">{notepad_content}</textarea>
    			      <br />
    			      <input type="button" name="Submit" value="Save" class="submit_disabled" id="notepad_save_button" disabled="disabled" onclick="saveNotepad();" />
    			    </form>
    			  </ZONE notepad enabled>
                </td>
              </tr>
            </table>
    	  </ZONE footer_element notepad>
    	</div>
    
    
    	</div>
    	<!-- leftfooterblock --><!-- /leftfooterblock -->
    	</td>
        <td width="40%" valign="top" bgcolor="#FFFFFF"><div style="padding:15px;">
          <h1><span class="footerColorSet1">Important</span> <span class="footerColorSet2">References</span><br />
          </h1>
    	  <table width="100%" border="0" cellspacing="2" cellpadding="0">
            <tr>
              <td><a href="?L=invite.tellafriend&amp;origin={system.origin}" class="footerColorSet1">Tell a friend / Invite a friend </a></td>
            </tr>
            <tr>
              <td height="1" bgcolor="#003366"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
            </tr>
            <tr>
              <td><a href="?L=info.contact" class="footerColorSet1">Contact us / Report Abuse </a></td>
            </tr>
            <tr>
              <td height="1" bgcolor="#003366"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
            </tr>
            <tr>
              <td><a href="Javascript:bookmark('{siteName}', '{siteURL}')" class="footerColorSet1">Bookmark us </a></td>
            </tr>
            <tr>
              <td height="1" bgcolor="#003366"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
            </tr>
            <tr>
              <td><a href="?L=info.terms" class="footerColorSet1">Privacy policy &amp; terms of use </a></td>
            </tr>
          </table>
    	  <!-- references --><!-- /references -->
        </div>
    	<!-- rightfooterblock --><!-- /rightfooterblock -->
    	</td>
      </tr>
      <tr>
        <td height="2" colspan="2" bgcolor="#000000"><img src="{themePath}/images/frame/spacer.gif" alt="Spacer" height="2" /></td>
      </tr>
      <tr>
        <td height="65" colspan="2" bgcolor="#020B32"><table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td valign="middle" id="copyright" style="padding-left:25px;"><a href="http://www.phpizabi.net" target="_blank" id="copyright">Powered by {systemVersion}</a><br />            
              &copy; 2005, 2006 - <a href="http://www.realitymedias.com" target="_blank" id="copyright">Real!ty Medias</a>, All rights reserved </td>
              <td align="right">
    		    <a href="http://www.phpizabi.net"><img src="{themePath}/images/frame/phpizabi.gif" hspace="25" /></a></td>
            </tr>
          </table></td>
      </tr>
    </table>
    <!-- footer -->
    <!-- /footer -->
    <script language="javascript" type="text/javascript">
      launchLANE();
      setTimeout('ajFetch(\'?L=&proc_footer_element=random\', \'footer_elements\', true, 300000);', 300000);
    </script>
    </body>
    </html>
    now the style.css file
    Code:
    /* 
      Those are the main and generic styles for this theme
    */
    body {
       background: #FFFFFF url("http://");
      color: #050d24;
      font: 12px "Lucida Grande", verdana, helvetica, arial, sans-serif;
      margin: 0px;
    }
    
    
    td, p {
      font: 12px "Lucida Grande", verdana, helvetica, arial, sans-serif;
      margin: 0px;
    }
    
    a {
      color: #2f63b3;
      text-decoration: none;
    }
    
    a:hover {
      text-decoration: underline;
    }
    
    img {
      border: none;
    }
    
    input, select, textarea {
      font-size: 100%;
      line-height: 150%;
      font: 11px "Lucida Grande", verdana, helvetica, arial, sans-serif;
    }
    
    .submit {
      background: #DCE6FF;
      font: 11px "Lucida Grande", verdana, helvetica, arial, sans-serif;
      font-weight: bold;
      color: #2f63b3;
      margin: 1px;
      padding: 3px 15px 3px 15px;
      border: solid 1px #2f63b3;
    }
    
    .submit_disabled {
      background: #CCCCCC;
      font: 11px "Lucida Grande", verdana, helvetica, arial, sans-serif;
      font-weight: bold;
      color: #999999;
      margin: 1px;
      padding: 3px 15px 3px 15px;
      border: solid 1px #999999;
    }
    
    /* Text hilight */
    .hilight {
      background-color:#FFFF00; /* #DCE6FF; 
      border-top: 1px solid #2f63b3;
      border-bottom: 1px solid #2f63b3; */
    }
    
    /*
      Gauges Styles
    */
    #gaugewrapper {
      border: solid 1px #000; 
      width: 100%;
    }
    
    #gaugelevel {
      position: relative; 
      left: 0; 
      top: 0; 
      background-color: #CCFF00;
    }
    
    #gaugelabel {
      width: 100%; 
      position: relative; 
      top: 0; 
      left: 0; 
      text-align: center;
    }
    
    /*
      This small hack will force the main table
      to expand vertically and stretch it so it
      fills the browser viewport.
    */
    html,body{
      margin: 0;
      padding: 0;
      height: 100%;
      border: none;
    }
    
    .fullheight {
      height: 100%;
    }
    
    /*
      The following "homeColorSet" and "footerColorSet"
      styles are color switches for elements that are outside
      the main white-backgrounded area, the home one is
      located on the homepage (which has a dark blue background)
      and the footer covers the bottom of each page which
      is also using a dark blue background color
    */
    .homeColorSet1 {
      color: #000000;
    }
    
    .homeColorSet2 {
      color: #6699CC;
    }
    
    .footerColorSet1 {
      color: #000000;
    }
    
    .footerColorSet2 {
      color: #2f63b3;
    }
    
    /* Inkspot styles */
    #inkspotMainPostBody {
      position: relative;
      background-color: #F2F5FF;
      padding: 20px;
      width: 660px;
      border: 1px solid #BBD4F9;
    }
    
    /* Calendars Styles */
    #calendar_emptyday {
      border: #FFFFFF solid 1px;
      float: left;
      width: 28px;
      height: 26px;
      margin: 1px;
    }
    
    #calendar_day {
      border: #CCCCCC solid 1px;
      text-align: center;
      vertical-align: middle;
      float: left;
      width: 28px;
      height: 26px;
      margin: 1px;
    }
    
    #calendar_busyDay {
      border: #CCCCCC solid 1px;
      background-color: #DCE6FF;
      text-align: center;
      vertical-align: middle;
      float: left;
      width: 28px;
      height: 26px;
      margin: 1px;
      color: #2f63b3;
    }
    
    #calendar_busyDay a {
      display: block;
      width: 100%;
      height: 100%;
      color: #2f63b3;
      text-decoration: none;
    }
    
    #calendar_row {
      clear: both;
    }
    
    #calendar {
    }
    /* Star Rating System  (Hack By alvini) */
    
    	/*             styles for the star rater                */	
    	.star-rating{
    		list-style:none;
    		margin: 0px;
    		padding:0px;
    		width: 150px;
    		height: 30px;
    		position: relative;
    		background: url(/alicia/theme/default/images/frame/rank_objects/star_rating.gif) top left repeat-x;		
    	}
    	.star-rating li{
    		padding:0px;
    		margin:0px;
    		/*\*/
    		float: left;
    		/* */
    	}
    	.star-rating li a{
    		display:block;
    		width:30px;
    		height: 30px;
    		text-decoration: none;
    		text-indent: -9000px;
    		z-index: 20;
    		position: absolute;
    		padding: 0px;
    	}
    	.star-rating li a:hover{
    		background: url(/alicia/theme/default/images/frame/rank_objects/star_rating.gif) left center;
    		z-index: 2;
    		left: 0px;
    	}
    	.star-rating a.one-star{
    		left: 0px;
    	}
    	.star-rating a.one-star:hover{
    		width:30px;
    	}
    	.star-rating a.two-stars{
    		left:30px;
    	}
    	.star-rating a.two-stars:hover{
    		width: 60px;
    	}
    	.star-rating a.three-stars{
    		left: 60px;
    	}
    	.star-rating a.three-stars:hover{
    		width: 90px;
    	}
    	.star-rating a.four-stars{
    		left: 90px;
    	}	
    	.star-rating a.four-stars:hover{
    		width: 120px;
    	}
    	.star-rating a.five-stars{
    		left: 120px;
    	}
    	.star-rating a.five-stars:hover{
    		width: 150px;
    	}
    	.star-rating li.current-rating{
    		background: url(/theme/default/images/frame/rank_objects/star_rating.gif) left bottom;
    		position: absolute;
    		height: 30px;
    		display: block;
    		text-indent: -9000px;
    		z-index: 1;
    	}		
    		
    /* ----- END ---- Star Rating System (Hack by alvini) */
    
    /* Quotes styles */
    blockquote {
      margin: 15px 30px 0 10px;
      padding-left: 20px;
      border-left: 5px solid #6699FF;
    }
    
    /* Headers */
    h1, h2, h3, h4, h5, h6 {
      font-family: "Lucida Grande", "Trebuchet MS", verdana, helvetica, arial, sans-serif;
      font-weight: normal;
      padding: 0px;
      margin: 0px;
    }
    
    h1 {
      font-weight: bold;
      font-size: 25px;
    }
    
    h2 {
      font-size: 20px;
      font-weight: bold;
    }
    
    h3 {
      font-weight: bold;
      color: #658EFD;
      font-size: 25px;
    }
    
    h4 {
      color: #658EFD;
      font-size: 20px;
      font-weight: bold;
    }
    
    h5 {
      color: #666666;
      font-size: 10px;
    }
    
    h6 {
      color: #2f63b3;
      font: 13px "Lucida Grande", verdana, helvetica, arial, sans-serif;
    }
    
    /* Some special form fields classes */
    #formTitle_DISABLED {
      font-family: "Lucida Grande", "Trebuchet MS", verdana, helvetica, arial, sans-serif;
      font-weight: normal;
      padding: 0px;
      margin: 0px;
      color: #658EFD;
      font-size: 18px;
      font-weight: bold;
      background-color: #DCE6FF;
      width: 100%;
      border: solid 1px #DCE6FF;
    }
    
    .fullwidth {
      width: 100%;
    }
    
    /* Navigation menu */
    #navigation {
      padding-left: 30px;
    }
    #navigation ul{
        list-style:none;
        margin:0;
        padding:0;
    }
    #navigation li{
        float:left;
        height:27px;
        padding-left:12px;
        background:url(images/tabs_reg_l.png) no-repeat left top;
    }
    #navigation li a {
    	font-family: "Trebuchet MS", verdana, helvetica, arial, sans-serif; 
    	font-weight: bold; 
    	font-size: 1.1em;
    	color: #515151;
    	padding:7px 14px 0 2px;
    	text-decoration: none;
    	float:left;
    	background:url(images/tabs_reg_r.png) no-repeat right top;
    	height:20px;
    }
    #navigation li.current{    background:url(images/tabs_active_l.png) no-repeat left top;}
    #navigation li.current a{    background:url(images/tabs_active_r.png) no-repeat right top;}
    #navigation a:hover{color:#c00;}
    #navigation li.current a{color:#fff}
    #usercontrol {
      padding-right: 30px;
    }
    
    #usercontrol a {
      font: 13px bold "Trebuchet MS", verdana, helvetica, arial, sans-serif;
      color: #515151;
      padding-right: 8px;
      text-decoration: none;
      font-weight: bold;
    }
    
    /* Copyright */
    #copyright {
      font: 10px Arial, Helvetica, sans-serif;
      color: #FFFFFF;
    }
    
    /* Users pictures */
    #picture {
      padding: 2px;
      border: 1px solid #CECECE;
      background-color: #FFFFFF;
    }
    
    /* BodyCodePicture */
    #bodyCodeImage {
      padding: 2px;
      border: 1px solid #CECECE;
      background-color: #FFFFFF;
    }
    
    /* CHAT StyleSheet */
    .chatNickEntity {
      clear: both; 
      border-bottom: solid 1px #BBD4F9; 
      padding: 2px; 
      background-color: #DCE6FF;
    }
    
    .chatNickEntity:hover {
      clear: both; 
      border-bottom: solid 1px #BBD4F9; 
      padding: 2px; 
      background-color: #BBD4F9;
    }
    
    .selectedChatNickEntity {
      clear: both; 
      border-bottom: solid 1px #BBD4F9; 
      padding: 2px; 
      background-color:#FFCC66;
    }
    
    #chatContent {
    	width: 100%;
    	height: 400px;
    	overflow: -moz-scrollbars-vertical;
    	overflow-y: scroll;
    	overflow-x: hidden;
    	padding: 5px;
    }
    
    #nickList {
      width: 100%;
      height: 400px;
      overflow: -moz-scrollbars-vertical;
      overflow-y: scroll;
      overflow-x: hidden;
      padding: 5px;
    }
    
    #shadeWrapper {
      background-color: #000;
      filter: alpha(opacity=40);
      -moz-opacity: .40;
      opacity: .40;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      position: absolute;
      z-index: 10;
      visibility: hidden;
    }
    
    #noShadeContent {
      top: 30%;
      left: 30%;
      filter: alpha(opacity=99);
      -moz-opacity: .99;
      opacity: .99;
      position: absolute;
      z-index: 11;
      visibility: hidden;
      padding: 2px;
      border: 1px solid #CECECE;
      background-color: #fff; 
    }
    
    /* TABS STYLESHEET */
    .tabberlive .tabbertabhide {
    	display:none;
    }
    
    .tabber {}
    
    .tabberlive {
    	margin-top:1em;
    }
    
    ul.tabbernav {
    	margin:0;
    	padding: 3px 0;
    	border-bottom: 1px solid #2f63b3;
    	font: bold 11px Verdana, sans-serif;
    }
    
    ul.tabbernav li {
    	list-style: none;
    	margin: 0;
    	display: inline;
    }
    
    ul.tabbernav li a {
    	padding: 3px 0.5em;
    	margin-left: 3px;
    	border: 1px solid #2f63b3;
    	border-bottom: none;
    	background: #AEC9F4;
    	text-decoration: none;
    }
    
    ul.tabbernav li a:link { 
    	color: #2f63b3; 
    }
    ul.tabbernav li a:visited {
    	color: #2f63b3;
    }
    
    ul.tabbernav li a:hover
    {
    	color: #FFFFFF;
    	background: #2f63b3;
    	border-color: #2f63b3;
    }
    
    ul.tabbernav li.tabberactive a {
    	background-color: #DCE6FF;
    	border-bottom: 1px solid #DCE6FF;
    }
    
    ul.tabbernav li.tabberactive a:hover {
    	color: #0D5D9C;
    	background: #DCE6FF;
    	border-bottom: 1px solid #DCE6FF;
    }
    
    .tabberlive .tabbertab {
    	padding:5px;
    	border-top:0;
    }
    
    .tabberlive .tabbertab h2 {
    	display:none;
    }
    
    .tabberlive .tabbertab h3 {
    	display:none;
    }
    body.page1 #navigation li.one,
    body.page2 #navigation li.two,
    body.page3 #navigation li.three,
    body.page4 #navigation li.four,
    body.page5 #navigation li.five,
    body.page6 #navigation li.six {
    background:url(images/tabs_active_l.png) no-repeat left top;
    }
    
    body.page1 #navigation li.one a,
    body.page2 #navigation li.two a,
    body.page3 #navigation li.three a,
    body.page4 #navigation li.four a,
    body.page5 #navigation li.five a,
    body.page6 #navigation li.six a {
     background:url(images/tabs_active_r.png) no-repeat right top;
        color:#fff;
    }
    and for example the search page
    Code:
    <body class="page3">
    
    <!-- header --><!-- /header -->
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td width="530">&nbsp;</td>
        <td rowspan="2">&nbsp;</td>
        <td width="290">&nbsp;</td>
      </tr>
      <tr>
        <td width="530" valign="top">
    	<!-- leftpane --><form method="get">
    	<table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td width="25">&nbsp;</td>
            <td colspan="2"><table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td valign="top"><h1>[Search Users {7755}] </h1>
                        <p>[Trying to find someone that shares your interests  or matches what you&rsquo;re searching for?&nbsp;  Use the following options below to help narrow your search, and provide  you with the best possible results. {7760}]</p><!-- breadcrumbs -->
    <!-- /breadcrumbs --></td>
                      <td align="right" valign="top"><img src="theme/default/images/icons/headers/search_users.gif" alt="[Calendar {350}]" width="100" height="100" /></td>
                    </tr>
                  </table>          </td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td colspan="2">&nbsp;</td>
          </tr>
          <tr>
            <td height="1" colspan="3" bgcolor="#E5E9EC"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
          </tr>
          <tr>
            <td height="8" colspan="3"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="8" /></td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td colspan="2">
    		<ZONE searchResultsHeader enabled><strong>[Your search produced {results.countTotal} result(s) {7765}]</strong></ZONE searchResultsHeader enabled>
    		<ZONE searchResultsHeader noResult><strong>[Your search produced no result {7770}]</strong></ZONE searchResultsHeader noResult>
    		<ZONE searchResultsHeader disabled>[Please fill in your search criteria below {7775}]		</ZONE searchResultsHeader disabled>		</td>
          </tr>
          <tr>
            <td height="8" colspan="3"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="8" /></td>
          </tr>
          <tr>
            <td colspan="3" background="theme/default/images/frame/block_border_top.gif" bgcolor="#AEC5FD"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="14" /></td>
          </tr>
          <tr>
            <td bgcolor="#DCE6FF">&nbsp;</td>
            <td colspan="2" bgcolor="#DCE6FF">&nbsp;</td>
          </tr>
          <tr>
            <td bgcolor="#DCE6FF">&nbsp;</td>
            <td colspan="2" bgcolor="#DCE6FF"><div class="tabber">
              
                  <div class="tabbertab">
                    <h2>[Search {300}]</h2>
    				<table width="100%" border="0" cellspacing="3" cellpadding="0">
                      <tr>
                        <td><input type="hidden" name="L" value="search.users" />
                        <input name="query" type="text" id="query" class="fullwidth" /></td>
                        <td><select name="gender" id="gender">
                          <option value="">Any gender</option>
                          <LOOP genderOptionDropdown>
                            <option value="{gender.option}">{gender.option}</option>
                          </LOOP genderOptionDropdown>
                        </select></td>
                      </tr>
                      <tr>
                        <td colspan="2" valign="top">
    					<label><input name="pattern" type="radio" value="or" checked="checked" /> [At least one word {165}] </label>
    					<label><input name="pattern" type="radio" value="and" /> [All the words {170}]</label> 
    					<label><input name="pattern" type="radio" value="all" /> [As a phrase {175}] </label>					</td>
                        </tr>
                      <tr>
                        <td width="50%" valign="top">&nbsp;</td>
                        <td valign="top">&nbsp;</td>
                      </tr>
                      <tr>
                        <td valign="top"><strong>[Only show {177}]</strong><br>
                          <p>
                            <label><input name="picture" type="checkbox" value="1" /> [Users with a picture {660}] </label>
                            <label><br>
                            <input name="online" type="checkbox" id="online" value="1" /> [Online users {665}]</label>
    					  </p>                      </td>
                        <td valign="top"><p><strong>[With age between {670}]</strong><br />    
                            <input name="agelow" type="text" id="agelow" size="3" />
                            [and {675}]
                            <input name="agehigh" type="text" id="agehigh" size="3" />
                          [years old {680}] <br />
                          <br />
                          <strong>[Within a range of {685}] <br />
                          </strong><input name="range" type="text" id="range" size="3" />
                          <ZONE distanceLabel miles>[miles {690}]</ZONE distanceLabel miles>
    					  <ZONE distanceLabel kilometers>[kilometers {695}]</ZONE distanceLabel kilometers>
                        </p>
                          </td>
                      </tr>
                      <tr>
                        <td valign="top"><p>
                          <input name="Submit" type="submit" id="Submit" value="[Search {300}]" class="submit" />
                        </p>
                          <br></td>
                        <td valign="top">&nbsp;</td>
                      </tr>
                    </table>
    
                    <p>&nbsp;</p>
                  </div>
    			  
    			   <div class="tabbertab">
                    <h2>[Advanced {700}]</h2>
    				<table width="100%" border="0" cellspacing="3" cellpadding="0">
    
                      <tr>
                        <td width="50%" valign="top"><strong>[Search in {705}]</strong><br>
                          <label><input name="sin[]" type="checkbox" value="username" checked="checked" /> 
                          [Usernames {710}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="city" checked="checked" /> 
                          [City {715}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="state" checked="checked" /> 
                          [State {720}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="country" checked="checked" /> 
                          [Country {725}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="quote" checked="checked" /> 
                          [User quote {730}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="header" checked="checked" /> 
                          [User header {735}]</label><br/>
                          <label><input name="sin[]" type="checkbox" value="profile" checked="checked" /> 
                          [Profile data {740}]</label>					</td>
                        <td valign="top"><p><strong>[Order by {220}]</strong><br>
                          <input name="order" type="radio" value="username" checked="checked" />
                            [Username {745}]<br>
                            <input name="order" type="radio" value="last_login" />
                            [Last login {750}]<br>
                            <input name="order" type="radio" value="last_load" />
                            [Online/Offline {755}]<br>
                            <input name="order" type="radio" value="id" />
                            [Registration date {760}]<br>
                            <input name="order" type="radio" value="age" />
                            [Age {765}]<br>
                            <strong>[Direction {225}]</strong>  <br>
                            <input name="direction" type="radio" value="asc" checked />
                            [Ascending {230}]<br>
                            <input name="direction" type="radio" value="desc" /> 
                            [Descending {235}] 
                            <br>
                          <br>
    </p>                      </td>
                      </tr>
    
                      <tr>
                        <td valign="top"><p>
                            <input name="submit" type="submit" id="submit" value="[Search {300}]" class="submit" />
                          </p>
                            <br></td>
                        <td valign="top">&nbsp;</td>
                      </tr>
                    </table>
    			   </div>
              
            </div></td>
          </tr>
          <tr>
            <td height="2" colspan="3" bgcolor="#DCE6FF"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="2" /></td>
          </tr>
          <tr>
            <td colspan="3" background="theme/default/images/frame/block_border_bottom.gif" bgcolor="#AEC5FD"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="14" /></td>
          </tr>
          <tr>
            <td height="10" colspan="3"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="10" /></td>
          </tr>
          <ZONE searchResultsBlock enabled>
    	  <tr>
    		<td>&nbsp;</td>
            <td><h1>[Your Search Results {240}] </h1></td>
            <td align="right">[Page {page.thisPage} out of {page.total} {7780}] </td>
          </tr>
          <tr>
            <td height="5"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="5" /></td>
            <td height="5" colspan="2" background="{themePath}/images/frame/greenbar.gif" bgcolor="#C0FF5E"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="5" /></td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td colspan="2">
              <LOOP searchResultsLoop>
                <table width="100%" cellpadding="0" cellspacing="3">
                  <tr>
                    <td colspan="2" valign="top" style="padding-top:5px;" width="80"><a href="?L=users.profile&id={user.id}"> <img src="system/image.php?file={user.mainpicture}" alt="[Picture {150}]" border="0" id="picture" /> </a><br />
                      <a href="?L=users.profile&id={user.id}">{user.username}</a> </td>
                    <td width="100%" valign="top"><h4>{user.quote}</h4>
                        <h6>[{user.username}, {user.gender}, {user.age} years old {7785}] </h6>
                        <p>{user.header}...</p>
                        <h6>[Last login: {750}] <img src="{themePath}/images/icons/date.gif" alt="[Date {135}]" width="16" height="16" hspace="2" align="absmiddle" /> {user.lastlogin} </h6></td>
                    <td width="20" align="right" valign="middle"><OBJ online> <img src="{themePath}/images/icons/status/online_mini.gif" alt="[Online {425}]" /> </OBJ online>
                      {user.online}</td>
                  </tr>
                </table>
              </LOOP searchResultsLoop>		  </td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td colspan="2" align="center">
    		
    		<ZONE paginationBlock enabled>
    		  <ZONE pagination.back disabled>&laquo; [Back {255}]</ZONE pagination.back disabled>
    		  <ZONE pagination.back linked><a href="{pagination.back.link}">&laquo; [Back {255}]</a></ZONE pagination.back linked>
    		
    		  <ZONE pagination.first disabled></ZONE pagination.first disabled>
    		  <ZONE pagination.first linked><a href="{pagination.first.link}">1...</a> </ZONE pagination.first linked>
    		
    		  <OBJ pagination.unlinked.page><strong>{pagination.page.pageNumber}</strong></OBJ pagination.unlinked.page>
    		  <OBJ pagination.linked.page> <a href="{pagination.page.link}">{pagination.page.pageNumber}</a> </OBJ pagination.linked.page>
    		
    		  {pagination.pages}
    
    		  <ZONE pagination.last disabled></ZONE pagination.last disabled>
    		  <ZONE pagination.last linked><a href="{pagination.last.link}">...{pagination.last.pageNumber}</a> </ZONE pagination.last linked>
    
    		  <ZONE pagination.next disabled>[Next {260}] &raquo;</ZONE pagination.next disabled>
    		  <ZONE pagination.next linked><a href="{pagination.next.link}">[Next {260}] &raquo;</a></ZONE pagination.next linked>
    		</ZONE paginationBlock enabled>
    
    		<ZONE paginationBlock disabled>
    		</ZONE paginationBlock disabled>
    		
    		</td>
          </tr>
          </ZONE searchResultsBlock enabled>
        </table>
    	</form><!-- /leftpane -->
    	</td>
        <td width="290" valign="top"><!-- rightpane --><table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td><h1>[My Saved Searches {265}] </h1>
              <p>[Make your searching faster and easier by saving your searches for a one click operation. {270}]</p>
    		  <br /><br />
              
     		  <ZONE savedSearchesList enabled>
    		    <h4>[My saved searches {265}] </h4>
    		    <table width="100%" border="0" cellspacing="0" cellpadding="0">
                  <LOOP favoriteSearches>
    			    <tr>
                      <td><a href="{get}">{name}</a></td>
                      <td align="right"><a href="?L=search.users&rm={key}">Remove</a></td>
                    </tr>
    			  </LOOP favoriteSearches>
                </table>
    		    <br /><br />
    		  </ZONE savedSearchesList enabled>
    		  
      		  <ZONE savedSearchesList disabled>
    		  </ZONE savedSearchesList disabled>
    		  
    		  <ZONE saveThisSearch enabled>
                <form method="post">
                  <table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td colspan="2"><h4>[Save this search {7790}] </h4></td>
                    </tr>
                    <tr>
                      <td>[Name your search: {7795}]                    </td>
                      <td><input name="name" type="text" id="name" maxlength="25" /></td>
                    </tr>
                    <tr>
                      <td colspan="2"><input name="SaveSearch" type="submit" id="SaveSearch" value="[Save {640}]" class="submit" /></td>
                    </tr>
                  </table>
                </form>
     		  </ZONE saveThisSearch enabled>
    
              </td>
            <td width="25">&nbsp;</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="5" colspan="2" background="{themePath}/images/frame/greenbar.gif"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="5" /></td>
          </tr>
          <tr>
            <td height="8" colspan="2"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="8" /></td>
          </tr>
          <tr>
            <td><h2>[Other Search Options {7800}] </h2>
              <p><a href="?L=search.online">[Online Users {7805}]</a><br />
                <a href="?L=blogs.search">[Search in Blogs {7810}]</a> </p>
              <p>&nbsp;</p>
              <p><a href="?L=search.match">[Match me! {7815}]</a></p></td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td><p>&nbsp;</p>          </td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td height="8" colspan="2"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="8" /></td>
          </tr>
          <tr>
            <td height="1" colspan="2" bgcolor="#E5E9EC"><img src="theme/default/images/frame/spacer.gif" alt="Spacer" height="1" /></td>
          </tr>
        </table><!-- /rightpane --></td>
      </tr>
    </table>
    <br>
    <br>
    <OBJ resultsBlockGridMode>
      <div style="float:left;">
        <a href="?L=users.profile&amp;id={id}">
          <img src="system/image.php?file={mainpicture}" alt="[Picture {150}]" hspace="2" border="0" id="picture" />
        </a>
        <br />
        <a href="?L=users.profile&amp;id={id}">{username}</a>
    </div>
      <br />
    </OBJ resultsBlockGridMode><!-- footer --><!-- /footer -->
    I really hope this is right cause I'm banging my head on the wall already, I'm sure you guys are doing the same thing

    ok, let me show you the code for index.php, which is at the root of the site and not part of the theme.

    Code:
    <?php
    ///////////////////////////////////////////////////////////////////////////////////////
    
    
    // INITIALIZE SYSTEM //////////////////////////////////////////////////////////////////
    	
    	/* System Internal Check */
    	define("CORE_STRAP", true);
    
    	/* Check System installation and/or include the configuration file */
    	@include("system/conf.inc.php");
    	if (!defined("INSTALLED")) header("Location: install/index.php");
    	
    	/* System Retrocompatibility with 0844 modules */
    	/*
    		This is a deprecated set. Next versions will NOT include this
    		retrocompatibility fix; any module using one of the functions below
    		will have to convert its calls to use the _fnc() transit method.
    	*/
    	if (isset($CONF["RETRO_844_COMPAT_MODE"]) and $CONF["RETRO_844_COMPAT_MODE"]) {
    		include("system/functions/age.php");
    		include("system/functions/array_remove.php");
    		include("system/functions/clearBodyCodes.php");
    		include("system/functions/convertBodyCodes.php");
    		include("system/functions/convertEmoticons.php");
    		include("system/functions/distance.php");
    		include("system/functions/geoLocalize.php");
    		include("system/functions/heritage_override.php");
    		include("system/functions/in_iarray.php");
    		include("system/functions/in_multiarray.php");
    		include("system/functions/laneMakeToken.php");
    		include("system/functions/moneyFormat.php");
    		include("system/functions/prepare_user.php");
    		include("system/functions/reload.php");
    		include("system/functions/saveConfig.php");
    		include("system/functions/sendmail.php");
    		include("system/functions/str_spot.php");
    		include("system/functions/strtrim.php");
    		include("system/functions/user.php");
    	}
    	
    	/* UTF8 Header Override */
    	($CONF["LOCALE_FORCE_UTF8_HEADER_OVERRIDE"]?header('Content-type: text/html; charset=utf-8'):false);
    	
    	/* Set globalized variables */
    	$GLOBALS["SYSTEM_VERSION"] = "PHPizabi v0.848b C1";
    	$GLOBALS["CHROMELESS_MODE"] = false;
    
    	/* Set session parameters */
    	session_start();
    
    	/* Include core-level functions and classes */
    	require("system/functions/classes/template.class.php");
    	require("system/functions/database/mysql.fnc.php");
    	
    // ERROR HANDLING AND REPORTING PROCEDURE CALL ////////////////////////////////////////
    	/* Set error reporting values */
    	error_reporting(
    		($CONF["ERROR_REPORT_ERRORS"]?		E_ERROR:	false) | 
    		($CONF["ERROR_REPORT_WARNINGS"]?	E_WARNING:	false) | 
    		($CONF["ERROR_REPORT_PARSES"]?		E_PARSE:	false) | 
    		($CONF["ERROR_REPORT_NOTICES"]?		E_NOTICE:	false)
    	);
    	
    // SQL INJECTIONS / XSS HACKS PROTECTION //////////////////////////////////////////////
    	$entities = array(";"=>"&#059;", "\""=>"&quot;", "'"=>"&#039;", "<"=>"&lt;", ">"=>"&gt;", "\\"=>"&#092;", "^"=>"&#094;");
    	
    	if (isset($_POST)) {
    		foreach($_POST as $var => $val) {
    			if (!is_array($val)) {
    				$_POST[$var] = trim(strtr(stripslashes($val), $entities));
    			}
    		}
    	}
    	unset ($var, $val, $entities);
    
    // SELF USER DATA PREPARATION CALL ////////////////////////////////////////////////////
    	me('id');
    
    // VIRTUAL HOSTS PRECOMPUTING /////////////////////////////////////////////////////////
    	if ($CONF["USE_VIRTUAL_HOSTS"]) {
    
    		if (!is_array($vhosts = unpk(file_get_contents($CONF["VIRTUAL_HOSTS_INFOFILE"])))) $vhosts = array();
    		$uPointer = (isset($vhosts[$_SERVER["HTTP_HOST"]]) 
    			? $_SERVER["HTTP_HOST"]
    			: (isset($vhosts["www.".$_SERVER["HTTP_HOST"]])
    			 	? "www.".$_SERVER["HTTP_HOST"]
    				: NULL
    			)
    		);
    
    		if (!is_null($uPointer)) {
    			$GLOBALS["VHOST"] = true;
    			foreach($vhosts[$uPointer] as $key => $override_value) $CONF[$key] = $override_value;
    		}
    	}
    	unset ($vhosts, $override_value);
    	
    // USER LEVEL HERITAGE ////////////////////////////////////////////////////////////////
    	if ($CONF["ENABLE_USER_LEVEL_HERITAGE"]) _fnc("heritage_override", "me");
    
    // WAP CONTROL ////////////////////////////////////////////////////////////////////////
    	/*
    		WAP
    		Control the user agent ... 		
    	*/
    	if ($CONF["WAP_GATEWAY_ENABLED"] && strpos($_SERVER["HTTP_ACCEPT"], "application/vnd.wap.xhtml+xml")) {
    		$GLOBALS["WAP_MODE"] = true;
    		$GLOBALS["CHROMELESS_MODE"] = true;
    	} else $GLOBALS["WAP_MODE"] = false;
    
    // LOGIN & LOGOUT SYSTEM //////////////////////////////////////////////////////////////		
    	if (isset($_POST["username"], $_POST["password"], $_POST[$CONF["LOGIN_SIGNAL_TRIGGER"]])) {
    		
    		/*
    			If we got a login signal, a password and a username, we will
    			proceed to check login information. We will first extract
    			the user row from the db.
    		*/
    		$user = myF(myQ("
    			SELECT `username`,`password`,`id`,`disable_until`,`active`
    			FROM `[x]users` 
    			WHERE LCASE(`username`)='".strtolower($_POST["username"])."'
    		"));
    		
    		if (!$user["id"]) $GLOBALS["LOGIN_FAIL_TYPE"] = "e.user";
    		elseif ($user["active"] != 1 && $CONF["LOGIN_REQUIRE_ACTIVE"]) $GLOBALS["LOGIN_FAIL_TYPE"] = "e.active";
    
    		else {
    			/*
    				If the user's account 'disabled' value is greater than 
    				the actual date value, and that the bruteforce protection
    				system is enabled, we will show an error message
    			*/
    			if (($user["disable_until"] > date("U")) && ($CONF["LOGIN_BRUTEFORCE_PROTECT:ENABLE"])) {
    				 $GLOBALS["LOGIN_FAIL_TYPE"] = "e.bruteforce";
    				(isset($_SESSION["loginFailCount"])?session_unregister('loginFailCount'):false);
    			}
    
    			/*
    				Account is not disabled
    			*/
    			else {
    				if ((isset($_SESSION["loginFailCount"])) && ($_SESSION["loginFailCount"] > $CONF["LOGIN_BRUTEFORCE_FAILCOUNT"])) {
    						
    					myQ("UPDATE `[x]users`
    						SET `disable_until` = ".(date("U")+$CONF["LOGIN_BRUTEFORCE_DISABLE_DURATION"])."
    						WHERE LCASE(`username`)='".strtolower($_POST["username"])."'
    						LIMIT 1"
    					);
    					
    					(isset($_SESSION["loginFailCount"])?session_unregister('loginFailCount'):false);
    					$GLOBALS["LOGIN_FAIL_TYPE"] = "e.bruteforce";
    				}
    					
    				else {
    						
    					/*
    						All the information correct, we will proceed to login
    					*/
    					if ($user["password"] == md5(trim($_POST["password"]))) {
    						$_SESSION["id"] = (integer)$user["id"];
    						
    						session_write_close();
    						
    						/*
    							Update the last login key
    						*/
    						$me_last_login = me("last_login");
    						myQ("UPDATE `[x]users` SET `last_login`='".date("U")."' WHERE `id`='".me('id')."'");
    						
    						/*
    							Route the user
    						*/
    						if (!$GLOBALS["WAP_MODE"]) {
    							header("Location: ".(!$me_last_login?$CONF["LOGIN_FIRST_ROUTE_TO"]:$CONF["LOGIN_ROUTE_TO"]));
    						} else header("Location: {$CONF["WAP_LOGIN_ROUTE_TO"]}");
    	
    					} 
    						
    					else {
    						(isset($_SESSION["loginFailCount"])?$_SESSION["loginFailCount"]++:$_SESSION["loginFailCount"]=1);
    						$GLOBALS["LOGIN_FAIL_TYPE"] = "e.password";
    					}
    				}
    			}
    		}
    	}
    
    	if ((isset($_GET[$CONF["LOGOUT_SIGNAL_TRIGGER"]])) && (!isset($_POST[$CONF["LOGIN_SIGNAL_TRIGGER"]]))) {
    		
    		/*
    			Handle admin swapping
    		*/
    		if (isset($_SESSION["swap_id"])) {
    			$_SESSION["id"] = $_SESSION["swap_id"];
    			session_unregister("swap_id");
    			header("Location: ?L=admin.index");
    		}
    		
    		else {
    			(isset($_SESSION["id"])?session_unregister('id'):false);
    			(isset($_SESSION["SELF_USER_DATA"])?session_unregister('SELF_USER_DATA'):false);
    
    			header("Location: {$CONF["LOGOUT_ROUTE_TO"]}");
    		}
    	}
    
    // ROUTING & ACCESS CONTROL ///////////////////////////////////////////////////////////
    
    	// THEME HANDLING /////////////////////////////////////////////////////////////////
    	if (($CONF["ALLOW_THEME_OVERRIDE"]) && (me('use_theme'))) $GLOBALS["THEME"] = me('use_theme');
    	else ($CONF["DEFAULT_THEME"]?$GLOBALS["THEME"]=$CONF["DEFAULT_THEME"]:$GLOBALS["THEME"]="default");
    
    	// BANNING CHECK SYSTEM ///////////////////////////////////////////////////////////
    	if ($CONF["BAN_ENABLE_BANCHECK"]) {
    		
    		$ip = ip2long( 
    			($CONF["BAN_CHECK_PROXY"] && isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR'] != ""
    				?$_SERVER['HTTP_X_FORWARDED_FOR']
    				:$_SERVER['REMOTE_ADDR']
    			)
    		);
    
    		/* Ban Layer 1 (Persistant cookie) */
    		if ($CONF["BAN_ENFORCE"] && isset($_COOKIE["b_expire"]) && $_COOKIE["b_expire"] > date("U")) {
    			$GLOBALS["BANNED"] = true;
    		}
    		
    		/* Ban layer 2 (IP Based) */
    		$banArray = unpk(file_get_contents($CONF["BAN_INFOFILE"]));
    
    		if (is_array($banArray)) {
    			foreach($banArray as $banEntity) {
    				if (($banEntity["FROM"] <= $ip && $banEntity["TO"] >= $ip) && ($banEntity["EXPIRE"] > date("U"))) {
    
    					$GLOBALS["BANNED"] = true;
    					$GLOBALS["BANARRAY"] = $banEntity;
    					break;
    		}	}	}
    
    		if (isset($GLOBALS["BANNED"]) && $GLOBALS["BANNED"]) {
    			
    			if ($CONF["BAN_ENFORCE"]) {
    				setcookie("b_expire", $expire=(isset($GLOBALS["BANARRAY"])&&is_array($GLOBALS["BANARRAY"]?$GLOBALS["BANARRAY"]["EXPIRE"]:date("U")+3600)), $expire);
    			}
    			
    			$banTemplate = new template;
    			$banTemplate -> LoadThis(file_get_contents("theme/{$GLOBALS["THEME"]}/templates/GLOBALS/banned.tpl"));
    			$banTemplate -> AssignArray(array(
    				"expire" => date($CONF["LOCALE_LONG_DATE_TIME"], $GLOBALS["BANARRAY"]["EXPIRE"]),
    				"body" => $GLOBALS["BANARRAY"]["BODY"],
    				"by" => $GLOBALS["BANARRAY"]["BY"]
    			));
    			$banTemplate -> Flush();
    			
    			if ($CONF["BAN_FORCE_SUICIDE"]) { 
    				die($CONF["BAN_FORCE_SUICIDE_MESSAGE"]);
    			}
    		}	
    	}
    
    	// CHROME CONTROL /////////////////////////////////////////////////////////////////
    	if (isset($_GET["chromeless"]) and $CONF["ALLOW_CHROME_CONTROL"]) $GLOBALS["CHROMELESS_MODE"] = true;
    
    	// MAINTENANCE MODE HANDLING //////////////////////////////////////////////////////
    	if ($CONF["MAINTENANCE_MODE_ON"]) {
    		if (!$GLOBALS["CHROMELESS_MODE"] and (me('is_administrator') or me('is_super_administrator'))) {
    			
    			$tpl = new template;
    			$tpl -> Load($CONF["MAINTENANCE_MODE_ADMIN_TEMPLATE"]);
    			$tpl -> Flush();
    		} 
    		
    		else if (!$GLOBALS["CHROMELESS_MODE"]) {
    			$tpl = new template;
    			$tpl -> Load($CONF["MAINTENANCE_MODE_TEMPLATE"]);
    			$tpl -> Flush();
    			(isset($_GET["L"])?$_GET["L"]="":false);
    			$GLOBALS["CHROMELESS_MODE"] = true;
    			die();
    		}
    	}
    	
    	// SWAP MODE HEADER HANDLING //////////////////////////////////////////////////////
    	if (isset($_SESSION["swap_id"]) && !$GLOBALS["CHROMELESS_MODE"]) {
    		$tpl = new template;
    		$tpl -> Load("theme/{$GLOBALS["THEME"]}/templates/GLOBALS/swap_mode.tpl");
    		$tpl -> Flush();
    	}
    
    	// READ THE CALLED PAGE INTO AN OB BUFFER /////////////////////////////////////////
    	ob_start("theme_ob_callback");
    
    	/* Check if the user is banned */
    	if (!(isset($GLOBALS["BANNED"]) && $GLOBALS["BANNED"])) {
    		
    		/* Run against the "L" call and form a path to the file to be loaded */
    		if (isset($_GET["L"]) && $_GET["L"] != "") { 
    
    			$file = NULL;
    			for ($i=0; $i <= count($load = explode(".", $_GET["L"]))-1; $i++) {
    				if (($i != 0) && ($i != count($load))) { $file .= "/"; }
    				$file .= $load[$i];
    			}
    		}
    		
    		/* Home Page */
    		elseif ($GLOBALS["WAP_MODE"]) $file = $CONF["WAP_HOME_FILE"];
    		else $file = $CONF["HOME_THEME_FILE"];
    
    		/*
    			Check access restrictions - If the user is an admin or a superadmin,
    			it is defaulted to $grant. All other users are checked against
    			the access database through the checkaccess function
    		*/
    		if (me('is_administrator') or me('is_superadministrator') or !isset($_GET["L"])) $grant = true;
    		elseif (isset($load) && is_array($load) && in_array("admin", $load)) $grant = false;
    		else $grant = checkaccess();
    
    		if ($grant) {
    			/* User is allowed to load the requested page. Let's try to do it. */
    			if (!is_file("modules/{$file}.php")) echo $CONF["404_NOT_FOUND_ERROR_MESSAGE"]."\n";
    			else {
    				$GLOBALS["THIS_PATH"] = (isset($_GET["L"])?$_GET["L"]:"HOME");
    				include ("modules/{$file}.php");
    			}
    		}
    		
    		else {
    			/* 
    				User is NOT allowed to load the requested page. We will try to find
    				an appropriate error template and throw it to the buffer. If we can't
    				get one, we will just use the generic error message.
    			*/
    			if (isset($_GET["L"]) and is_file($errFile = "theme/templates/GLOBALS/errors/{$_GET["L"]}.tpl")) {
    				echo "!";
    				$tpl = new template;
    				$tpl -> Load("!{$errFile}");
    				$tpl -> Flush();
    			}
    			
    			elseif (is_file($errFile = "theme/templates/GLOBALS/errors/generic.tpl")) {
    				$tpl = new template;
    				$tpl -> Load("!{$errFile}");
    				$tpl -> Flush();
    			}
    			
    			else echo $CONF["NO_ACCESS_MESSAGE"]."\n";
    		}
    				
    	} else echo $GLOBALS["BANTEMPLATE"];
    
    	ob_end_flush();
    
    	// INCLUDE THE MAIN THEME FRAME AND PARSE IT //////////////////////////////////////
    	function theme_ob_callback($buffer) {
    		global $CONF;
    		
    		/*
    			Some web servers (e.g. Apache) change the working directory of a script 
    			when calling the callback function. Removing the following on those
    			servers will change the global path thus prevent PHPizabi from getting
    			the theme file thus producing an error output. The following function 
    			will change the working directory back to its original value. 
    		*/
    		@chdir(@dirname((strstr($_SERVER["SCRIPT_FILENAME"], $_SERVER["PHP_SELF"]) 
    			? $_SERVER["SCRIPT_FILENAME"] 
    			: $_SERVER["PATH_TRANSLATED"]
    		)));
    		
    		/*
    			in WAP mode, no theme is required, each template constitutes
    			the theme AND the template content. We will just flush the
    			buffer to our WAP client.
    		*/
    		if ($GLOBALS["WAP_MODE"]) return $buffer;
    				
    		/*
    			Handle the chromeless & WAP calls
    		*/
    		if ($GLOBALS["CHROMELESS_MODE"]) {
    			$tpl = new template;
    			$tpl -> LoadThis($buffer);
    		}
    
    		else {
    			/*
    				Handle unshared frame file for home
    			*/
    			if (!$CONF["SHARE_FRAME_FILE_WITH_HOME"] && (!isset($_GET["L"]) or $_GET["L"] == "" or $_GET["L"] == "HOME")) {
    				$tpl = new template;
    				$tpl -> LoadThis($buffer);
    			}
    			
    			else {
    
    				/* 
    					Check if the file exists 
    				*/
    				if (is_file("theme/".$GLOBALS["THEME"]."/".$CONF["FRAME_THEME_FILE"])) {
    
    					/*
    						The THEME file is loaded into the template conversion
    						system and procesed. The following will create the new
    						template object and push the theme file content into
    						its buffer
    					*/
    					$tpl = new template;
    					$tpl -> LoadThis(file_get_contents("theme/".$GLOBALS["THEME"]."/".$CONF["FRAME_THEME_FILE"]));
    				}
    
    				/* 
    					There has been an error trying to load the theme file... Throw it. 
    				*/
    				else return "Failed to load the theme frame and / or home file";
    			}
    		}
    		
    		/*
    			We will now assign the generic theme-related replacement 
    			items, the JUMP call and the ThemePath values are passed
    			with the next line.
    		*/
    		$tpl->AssignArray(array(
    			"jump"=>$buffer,
    			"themePath"=>"theme/{$GLOBALS["THEME"]}",
    			"systemVersion"=>$GLOBALS["SYSTEM_VERSION"],
    			"siteName"=>$CONF["SITE_NAME"],
    			"siteURL"=>"http://".$_SERVER['HTTP_HOST'].str_replace("/index.php", NULL, $_SERVER['PHP_SELF'])
    		));
    
    		/*
    			Include the theme-based bufferProcParse function file if
    			it exists, and run it on the buffer.
    		*/
    		if (is_file("theme/{$GLOBALS["THEME"]}/proc.inc.php") && include("theme/{$GLOBALS["THEME"]}/proc.inc.php")) {
    			if (function_exists("bufferProcParse")) $buffer_flush_value = bufferProcParse($tpl->Flush(1));
    		}
    		if (!isset($buffer_flush_value)) $buffer_flush_value = $tpl->Flush(1);
    		
    		/*
    			The following is the output compression and cleanup
    			process. It will at first clean unnecessary codes
    			from the output, then gunzip the buffer.
    		*/
    		if (!$GLOBALS["CHROMELESS_MODE"]) {
    
    			if (ckbool($CONF["POST_PROCESS_CLEAN_OUTPUT"])) {
    				$characters_entities = array('/\\r/', '/\\n/', '/\\t/', ' {2,}+/');
    				$replacement_values = array('', '', '', ' ');
    				$buffer_flush_value = preg_replace($characters_entities, $replacement_values, $buffer_flush_value);
    			}
    
    			if (ckbool($CONF["POST_PROCESS_COMPRESS_OUTPUT"]) and strstr($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
    				header("Content-Encoding: gzip");
    				$buffer_flush_value = gzencode(
    					$buffer_flush_value."<!-- Powered by {$GLOBALS["SYSTEM_VERSION"]} - http://www.PHPizabi.net -->",
    					$CONF["POST_PROCESS_COMPRESSION_RATE"]
    				);
    			}
    			else $buffer_flush_value .= "<!-- Powered by {$GLOBALS["SYSTEM_VERSION"]} - http://www.PHPizabi.net -->";
    		}
    		
    		/*
    			The template buffer is flushed and passed back to
    			the OB system.
    		*/		
    		return (!is_null($buffer_flush_value)?$buffer_flush_value:false);
    
    	}
    
    	// ACCESS CONTROL CHECKUP AND VALIDATION PROCEDURE ////////////////////////////////
    	function checkaccess() {
    		global $CONF;
    		
    		/*
    			Automatically allow admins to load any page
    			without any verification.
    		*/
    		if (me("is_administrator") || me("is_superadministrator")) return true;
    		
    		else {
    			
    			/*
    				Make sure we got a L key or return true...
    			*/
    			if (!isset($_GET["L"]) or $_GET["L"] == "") return true;
    			
    			/*
    				Lane is a bit special... let's let it go
    			*/
    			if ($_GET["L"] == "lane.lane") return true;
    			
    			/* 
    				Load the user's page loads history and
    				set the actual date ustamp
    			*/
    			if (!is_array($history = unpk(me("act_history")))) $history = array();
    			$uStamp = date("U", mktime(0,0,0,date("m"),date("d"),date("Y")));
    
    			/*
    				Load the access control array
    			*/
    			if (!is_array($accessControl = unpk(file_get_contents("system/cache/access.dat")))) $accessControl = array();
    			
    			/*
    				Check if the user's account type is 
    				a part of the access control array
    			*/
    			if (me("account_type") != 0 && isset($accessControl[me("account_type")])) {
    				if (isset($accessControl[me("account_type")][$_GET["L"]])) {
    					if (
    						($accessControl[me("account_type")][$_GET["L"]]["ALLOW"])
    						&&
    						(
    							(
    								$accessControl[me("account_type")][$_GET["L"]]["BYCOUNT"] != 0
    								&&
    								$accessControl[me("account_type")][$_GET["L"]]["BYCOUNT"] > $history[$_GET["L"]][$uStamp]
    							) 
    							||
    							$accessControl[me("account_type")][$_GET["L"]]["BYCOUNT"] == 0
    						)
    					) return true;
    					else return false;
    				} else return ($CONF["DEFAULT_ACCESS_RULE:ALLOW"] ? true : false);
    			}
    			
    			/*
    				If we got no account type, we will check
    				if we're logged in or not
    			*/
    			elseif (isset($_SESSION["id"]) && isset($accessControl["U"])) {
    				if (isset($accessControl["U"][$_GET["L"]])) {
    					if (
    						($accessControl["U"][$_GET["L"]]["ALLOW"])
    						&&
    						(
    							(
    								$accessControl["U"][$_GET["L"]]["BYCOUNT"] != 0
    								&&
    								$accessControl["U"][$_GET["L"]]["BYCOUNT"] > $history[$_GET["L"]][$uStamp]
    							)
    							||
    							$accessControl["U"][$_GET["L"]]["BYCOUNT"] == 0
    						)
    					) return true;
    					else return false;
    				} else return ($CONF["DEFAULT_ACCESS_RULE:ALLOW"] ? true : false);
    			}
    			
    			elseif (isset($accessControl["G"])) {
    				if (isset($accessControl["G"][$_GET["L"]])) {
    					if ($accessControl["G"][$_GET["L"]]["ALLOW"]) return true;
    					else return false;
    				} else return ($CONF["DEFAULT_ACCESS_RULE:ALLOW"] ? true : false);
    			}
    			
    			/*
    				No access restriction value found. Return the default
    				access value instead.
    			*/
    			else return ($CONF["DEFAULT_ACCESS_RULE:ALLOW"] ? true : false);
    		}
    	}
    
    	// LOGGING & STATISTICS APPENDING PROCESS /////////////////////////////////////////
    	if ($CONF["LOG_ENABLED"] && !$GLOBALS["CHROMELESS_MODE"]) {	
    		$GLOBALS["LAST_LOG_ENTRY"] = 
    			 me('id').$CONF["LOG_DATA_SEPARATORS"]
    			.me('username').$CONF["LOG_DATA_SEPARATORS"]
    			.(isset($_SERVER["REMOTE_ADDR"])?$_SERVER["REMOTE_ADDR"]:false).$CONF["LOG_DATA_SEPARATORS"]
    			.(isset($_SERVER["REMOTE_PORT"])?$_SERVER["REMOTE_PORT"]:false).$CONF["LOG_DATA_SEPARATORS"]
    			.(isset($_SERVER["HTTP_REFERER"])?$_SERVER["HTTP_REFERER"]:false).$CONF["LOG_DATA_SEPARATORS"]
    			.(isset($_SERVER["HTTP_USER_AGENT"])?$_SERVER["HTTP_USER_AGENT"]:false).$CONF["LOG_DATA_SEPARATORS"]
    			.(isset($_GET["L"])?$_GET["L"]:false).$CONF["LOG_DATA_SEPARATORS"]
    			.date("U")
    			.$CONF["LOG_LINE_SEPARATORS"];
    
    		if ($CONF["LOG_DAILY_MODE"]) {
    			$GLOBALS["LOGFILE"] = $CONF["LOG_DIRECTORY"]."/".date("U", mktime(0,0,0,date("m"),date("d"),date("Y"))).".".$CONF["LOG_FILE_EXTENTION"];
    		} else {
    			$GLOBALS["LOGFILE"] = $CONF["LOG_DIRECTORY"]."/".$CONF["LOG_UNILOG_FILE"];
    		}
    			
    		if ($logHandle = @fopen($GLOBALS["LOGFILE"], 'a')) {
    			fwrite($logHandle, $GLOBALS["LAST_LOG_ENTRY"]);
    			fclose($logHandle);
    		}
    	}
    
    	// UPDATE USER'S LASTLOAD & HISTORY ENTRY IN THE DATABASE /////////////////////////
    	if (!isset($history)) if (!is_array($history = unpk(me("act_history")))) $history = array();
    	
    	if (isset($_GET["L"]) && !$GLOBALS["CHROMELESS_MODE"]) {
    		$uStamp = date("U", mktime(0,0,0,date("m"),date("d"),date("Y")));
    		(isset($history[$_GET["L"]][$uStamp]) ? $history[$_GET["L"]][$uStamp]++ : $history[$_GET["L"]][$uStamp] = 1);
    	}
    	
    	myQ("
    		UPDATE `[x]users` 
    		SET 
    			`last_load` = '".date("U")."',
    			`act_history` = '".pk($history)."'
    		WHERE `id`='".me('id')."'
    	");
    	
    	unset($history);
    	
    	// SCHEDULED TASKS ////////////////////////////////////////////////////////////////
    	/*
    		Let's check if the CRON job has been running lately. We will run it if
    		it hasnt been running for too long. This is a "random" process (like the
    		garbage collector within PHP), if the site is popular enough to trigger the
    		random often enough, it means that the cron job should be checked more often.
    	*/
    	if (rand(0,200) == 1) {
    		
    		/* Check the cron pid file last modification date */
    		if (!is_file("system/cache/temp/cron_pid.dat") or filemtime("system/cache/temp/cron_pid.dat") < time() - 43200) {
    			include_once("system/v_cron_proc.php");
    		}
    	}
    
    	// CLOSE DATABASE LINK ////////////////////////////////////////////////////////////
    	myClose();
    	
    	// CORE LEVEL FUNCTIONS ///////////////////////////////////////////////////////////
    	function _fnc() {
    
    		$args = func_get_args(); 
    		$path = "system/functions/";
    		
    		if ($loc = strrpos($args[0], '/')) list($path, $func) = split('-l-', chunk_split($args[0], $loc+1, '-l-'));
    		else $func = $args[0];
    		
    		unset($args[0]);
    
    		if (!function_exists($func)) include_once($path.$func.'.php');
    		return call_user_func_array($func, $args);
    		
    	}
    	
    	function me($content) {
    		global $CONF;
    		
    		if ($content == "flush") {
    			unset($GLOBALS["SELF_USER_DATA"]);
    			session_unregister("SELF_USER_DATA");
    			return true;
    		}
    		
    		else {
    			if (isset($GLOBALS["SELF_USER_DATA"])) { 
    				if (isset($GLOBALS["SELF_USER_DATA"][$content])) return $GLOBALS["SELF_USER_DATA"][$content];
    
    				else {
    					$me = myF(myQ("SELECT `{$content}` FROM `[x]users` WHERE `id`='{$_SESSION["id"]}' LIMIT 1"));
    					return ($GLOBALS["SELF_USER_DATA"][$content] = $me[$content] ? $me[$content] : NULL);
    				}
    				
    			}
    			
    			else if (isset($_SESSION["id"])) {
    				$GLOBALS["SELF_USER_DATA"] = myF(myQ("
    					SELECT `id`, `last_load`, `last_login`, `username`, `password`, `email`, `email_verified`, `city`,
    						`state`, `country`, `zipcode`, `latitude`, `longitude`, `birthdate`, `age`, `gender`, `language`, 
    						`use_theme`, `mainpicture`, `account_type`, `is_administrator`
    					FROM [x]users 
    					WHERE `id`='{$_SESSION["id"]}'
    					LIMIT 1
    				"));
    				return me($content);
    			} 
    		}
    		return false;
    	}
    	
    	function pk($data) {
    		return urlencode(serialize($data));
    	}
    
    	function unpk($data) {
    		return unserialize(urldecode($data));
    	}
    	
    	function ckbool(&$var) { 
    		if (!isset($var)) return false;
    		elseif ((bool)$var) return true;
    		return false;		
    	}
    	
    
    ?>

  23. #23
    The CSS Clinic is open silver trophybronze trophy
    Paul O'B's Avatar
    Join Date
    Jan 2003
    Location
    Hampshire UK
    Posts
    40,526
    Mentioned
    182 Post(s)
    Tagged
    6 Thread(s)
    Hmm looking at your html for the search page I see this:

    Code:
    </head>
    <body>
    <body class="page1">
    <body class="page2">
    <body class="page3">
    <!-- header --><!-- /header -->
    <table width="855" border="
    That is invalid and what I wanted to see was this:

    Code:
    </head>
    <body class="page3">
    <!-- header --><!-- /header -->
    <table width="855" border="
    Therefore it looks to me as though you have no editable region for the body tag or for the navigation and the only stuff you can change is your content etc.

    This means that you will be unable to highlight the navigation via css because we can't add anything different to each page as required to effect a change. Can you confirm this is true?

    If so then you may need to resort to a server side method similar to this:

    http://bonrouge.com/br.php?page=current2

  24. #24
    SitePoint Enthusiast
    Join Date
    May 2006
    Location
    Chicago
    Posts
    76
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I think you're right Paul. I'm looking right now at the php solution.

    So, I made a menu.htm file, and then do I add the php code to the same file or I would added it to the frame.tpl file or the index.php file?

  25. #25
    padawan silver trophybronze trophy markbrown4's Avatar
    Join Date
    Jul 2006
    Location
    Victoria, Australia
    Posts
    4,117
    Mentioned
    28 Post(s)
    Tagged
    2 Thread(s)
    horatiub,

    Make the href attributes the same as that in the URL's for the search and replace - use full http://www.exa...
    You would add it to frame.tpl and you would replace the current menu code -
    Code:
    <td id="navigation"><!-- breadcrumbs -->
       <?php
    $menu = file_get_contents("menu.htm");
    $menu = preg_replace("|<li><a href=\"" . basename($_SERVER['PHP_SELF']) . "\">(.*)</[^>]+></li>|U", "<li class=\"current\">$1</li>", $menu);
    echo $menu;
    ?>
        <!-- /breadcrumbs --></td>
    as the PHP snippet loops goes through the file and if the menu item is the same as the page that is currently open it will add the class="current" which you can use to style the menu.

    If that works then you can get rid of all the <body class="page3">

    Weeeee weeeee weeeee I'm getting


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •