Version Notes
add smart menu and easy tesimonial extension
Download this release
Release Info
Developer | Hai Nguyen |
Extension | FreePOP_Theme |
Version | 1.5.0 |
Comparing to | |
See all releases |
Code changes from version 1.4.2.0 to 1.5.0
- app/design/frontend/default/freepop/layout/easybanner.xml +22 -0
- app/design/frontend/default/freepop/layout/newsletter.xml +1 -1
- app/design/frontend/default/freepop/layout/smartmenu.xml +57 -0
- app/design/frontend/default/freepop/layout/testimonial.xml +3 -4
- app/design/frontend/default/freepop/template/easybanner/cycleslider.phtml +52 -0
- app/design/frontend/default/freepop/template/easybanner/galleryview.phtml +76 -0
- app/design/frontend/default/freepop/template/easybanner/simpleslider.phtml +55 -0
- app/design/frontend/default/freepop/template/easybanner/staticview.phtml +39 -0
- app/design/frontend/default/freepop/template/smartmenu/accordion_left.phtml +460 -0
- app/design/frontend/default/freepop/template/smartmenu/accordion_right.phtml +459 -0
- app/design/frontend/default/freepop/template/smartmenu/dropdown_left.phtml +261 -0
- app/design/frontend/default/freepop/template/smartmenu/dropdown_right.phtml +262 -0
- app/design/frontend/default/freepop/template/smartmenu/shopby.phtml +138 -0
- app/design/frontend/default/freepop/template/testimonial/list.phtml +135 -0
- app/design/frontend/default/freepop/template/testimonial/list_nopaging.phtml +131 -0
- app/design/frontend/default/freepop/template/testimonial/pager.phtml +53 -0
- app/design/frontend/default/freepop/template/testimonial/submit.phtml +97 -0
- app/design/frontend/default/freepop/template/testimonial/testimonial.phtml +71 -0
- app/design/frontend/default/freepop/template/testimonial/testimonial_advance.phtml +79 -0
- app/design/frontend/default/freepop/template/testimonial/view.phtml +9 -0
- package.xml +5 -5
- skin/frontend/default/freepop/css/easybanner.css +180 -0
- skin/frontend/default/freepop/css/styles.css +3 -3
- skin/frontend/default/freepop/css/testimonial/images/Thumbs.db +0 -0
- skin/frontend/default/freepop/css/testimonial/images/bkg_toolbar2.gif +0 -0
- skin/frontend/default/freepop/css/testimonial/images/pager_bg.gif +0 -0
- skin/frontend/default/freepop/css/testimonial/style.css +75 -0
- skin/frontend/default/freepop/images/bg_active_banner.gif +0 -0
- skin/frontend/default/freepop/images/bg_banner.gif +0 -0
- skin/frontend/default/freepop/images/bg_select_banner.gif +0 -0
- skin/frontend/default/freepop/images/testimonial/Thumbs.db +0 -0
- skin/frontend/default/freepop/images/testimonial/bottom.jpg +0 -0
- skin/frontend/default/freepop/images/testimonial/bottom_r.jpg +0 -0
- skin/frontend/default/freepop/images/testimonial/div_bt.gif +0 -0
- skin/frontend/default/freepop/images/testimonial/div_md.gif +0 -0
- skin/frontend/default/freepop/images/testimonial/div_top.gif +0 -0
- skin/frontend/default/freepop/images/testimonial/icon_bt.gif +0 -0
- skin/frontend/default/freepop/images/testimonial/icon_top.gif +0 -0
- skin/frontend/default/freepop/images/testimonial/left.jpg +0 -0
- skin/frontend/default/freepop/images/testimonial/right.jpg +0 -0
- skin/frontend/default/freepop/images/testimonial/top.jpg +0 -0
- skin/frontend/default/freepop/images/testimonial/top_left.jpg +0 -0
- skin/frontend/default/freepop/images/testimonial/top_right.jpg +0 -0
- skin/frontend/default/freepop/js/easybanner/easySlider1.5.js +175 -0
- skin/frontend/default/freepop/js/easybanner/jquery.cycle.js +750 -0
- skin/frontend/default/freepop/js/easybanner/jquery.lightbox-0.5.js +472 -0
- skin/frontend/default/freepop/js/easybanner/jquery.msAccordion.js +97 -0
- skin/frontend/default/freepop/js/easybanner/plugins.init.js +16 -0
- skin/frontend/default/freepop/js/galleryview/jquery.easing.1.3.js +205 -0
- skin/frontend/default/freepop/js/galleryview/jquery.galleryview-1.1.js +548 -0
- skin/frontend/default/freepop/js/galleryview/jquery.timers-1.1.2.js +147 -0
- skin/frontend/default/freepop/js/galleryview/themes/.DS_Store +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/dark/Thumbs.db +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/dark/next.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/dark/panel-nav-next.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/dark/panel-nav-prev.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/dark/pointer-down.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/dark/pointer.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/dark/prev.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/light/next.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/light/panel-nav-next.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/light/panel-nav-prev.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/light/pointer-down.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/light/pointer.png +0 -0
- skin/frontend/default/freepop/js/galleryview/themes/light/prev.png +0 -0
- skin/frontend/default/freepop/js/testimonial/jquery-1.3.2.min.js +19 -0
- skin/frontend/default/freepop/js/testimonial/jquery.cycle.js +750 -0
- skin/frontend/default/freepop/js/testimonial/jquery_noconflict.js +1 -0
- skin/frontend/default/freepop/smartmenu/css/smartmenu.css +324 -0
- skin/frontend/default/freepop/smartmenu/css/superfish-navbar.css +93 -0
- skin/frontend/default/freepop/smartmenu/css/superfish-vertical.css +24 -0
- skin/frontend/default/freepop/smartmenu/css/superfish.css +245 -0
- skin/frontend/default/freepop/smartmenu/images/Thumbs.db +0 -0
- skin/frontend/default/freepop/smartmenu/images/arrow-cat-active.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/arrow-cat-active.png +0 -0
- skin/frontend/default/freepop/smartmenu/images/arrow-cat-hover.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/arrow-cat-hover.png +0 -0
- skin/frontend/default/freepop/smartmenu/images/arrow-cat.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/arrow-cat.png +0 -0
- skin/frontend/default/freepop/smartmenu/images/arrows-ffffff.png +0 -0
- skin/frontend/default/freepop/smartmenu/images/base_mini_head_bg.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/bg-cate-active.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/bg-cate-active2.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/bg-li.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/bg_block_content.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/bg_listmenu.png +0 -0
- skin/frontend/default/freepop/smartmenu/images/bg_listmenu2.png +0 -0
- skin/frontend/default/freepop/smartmenu/images/icon.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/icon.png +0 -0
- skin/frontend/default/freepop/smartmenu/images/icon_01.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/layered_nav_head_bg.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/layered_nav_narrowed_category_heading.gif +0 -0
- skin/frontend/default/freepop/smartmenu/images/shadow.png +0 -0
- skin/frontend/default/freepop/smartmenu/js/accordion.js +272 -0
- skin/frontend/default/freepop/smartmenu/js/accordion_menu.js +62 -0
- skin/frontend/default/freepop/smartmenu/js/hoverIntent.js +84 -0
- skin/frontend/default/freepop/smartmenu/js/jquery-accordion-menu.js +7 -0
- skin/frontend/default/freepop/smartmenu/js/jquery.bgiframe.min.js +10 -0
- skin/frontend/default/freepop/smartmenu/js/jquery.js +1 -0
- skin/frontend/default/freepop/smartmenu/js/superfish.js +121 -0
- skin/frontend/default/freepop/smartmenu/js/supersubs.js +90 -0
app/design/frontend/default/freepop/layout/easybanner.xml
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<layout version="0.1.0">
|
3 |
+
<default>
|
4 |
+
<reference name="head">
|
5 |
+
<action method="addCss"><stylesheet>css/easybanner.css</stylesheet></action>
|
6 |
+
<action method="addJs"><script>mw_js/jquery.js</script></action>
|
7 |
+
<action method="addJs"><script>mw_js/jquery_noconflict.js</script></action>
|
8 |
+
<action method="addItem"><type>skin_js</type><name>js/easybanner/jquery.lightbox-0.5.js</name></action>
|
9 |
+
<action method="addItem"><type>skin_js</type><name>js/easybanner/plugins.init.js</name></action>
|
10 |
+
</reference>
|
11 |
+
</default>
|
12 |
+
<easybanner_index_index>
|
13 |
+
<reference name="root">
|
14 |
+
<action method="setTemplate"><template>page/1column.phtml</template></action>
|
15 |
+
</reference>
|
16 |
+
<reference name="content">
|
17 |
+
<block type="easybanner/banner" name="banner" template="easybanner/simpleslider.phtml">
|
18 |
+
<action method="setBannerId"><banner_id>home</banner_id></action>
|
19 |
+
</block>
|
20 |
+
</reference>
|
21 |
+
</easybanner_index_index>
|
22 |
+
</layout>
|
app/design/frontend/default/freepop/layout/newsletter.xml
CHANGED
@@ -36,7 +36,7 @@ Default layout, loads most of the pages
|
|
36 |
|
37 |
<!-- Mage_Newsletter -->
|
38 |
<reference name="left">
|
39 |
-
<block type="newsletter/subscribe" after="
|
40 |
</reference>
|
41 |
|
42 |
</default>
|
36 |
|
37 |
<!-- Mage_Newsletter -->
|
38 |
<reference name="left">
|
39 |
+
<block type="newsletter/subscribe" after="left.permanent.callout" name="left.newsletter" template="newsletter/subscribe.phtml"/>
|
40 |
</reference>
|
41 |
|
42 |
</default>
|
app/design/frontend/default/freepop/layout/smartmenu.xml
ADDED
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<layout version="0.1.0">
|
3 |
+
<default>
|
4 |
+
<reference name="head">
|
5 |
+
<action method="addJs"><script>mw_js/jquery.js</script></action>
|
6 |
+
<action method="addJs"><script>mw_js/jquery_noconflict.js</script></action>
|
7 |
+
|
8 |
+
<action method="addItem"><type>skin_js</type><name>smartmenu/js/accordion.js</name></action>
|
9 |
+
<action method="addItem"><type>skin_js</type><name>smartmenu/js/accordion_menu.js</name></action>
|
10 |
+
<action method="addItem"><type>skin_js</type><name>smartmenu/js/hoverIntent.js</name></action>
|
11 |
+
<action method="addItem"><type>skin_js</type><name>smartmenu/js/superfish.js</name></action>
|
12 |
+
<action method="addItem"><type>skin_js</type><name>smartmenu/js/jquery-accordion-menu.js</name></action>
|
13 |
+
<action method="addCss"><stylesheet>smartmenu/css/smartmenu.css</stylesheet></action>
|
14 |
+
<action method="addCss"><stylesheet>smartmenu/css/superfish.css</stylesheet></action>
|
15 |
+
<action method="addCss"><stylesheet>smartmenu/css/superfish-vertical.css</stylesheet></action>
|
16 |
+
</reference>
|
17 |
+
|
18 |
+
<reference name="left">
|
19 |
+
<block type="catalog/navigation" after="currency" name="left_navigation" template="">
|
20 |
+
<action method="setTemplate" ifconfig="smartmenu/smartmenu/leftmenu" ifvalue="2">
|
21 |
+
<template>smartmenu/dropdown_left.phtml</template>
|
22 |
+
</action>
|
23 |
+
</block>
|
24 |
+
<block type="catalog/navigation" after="currency" name="left_smartmenu" template="">
|
25 |
+
<action method="setTemplate" ifconfig="smartmenu/smartmenu/leftmenu" ifvalue="1">
|
26 |
+
<template>smartmenu/accordion_left.phtml</template>
|
27 |
+
</action>
|
28 |
+
</block>
|
29 |
+
</reference>
|
30 |
+
|
31 |
+
<reference name="right">
|
32 |
+
<block type="catalog/navigation" before="-" name="right_navigation" template="">
|
33 |
+
<action method="setTemplate" ifconfig="smartmenu/smartmenu/rightmenu" ifvalue="1">
|
34 |
+
<template>smartmenu/accordion_right.phtml</template>
|
35 |
+
</action>
|
36 |
+
</block>
|
37 |
+
<block type="catalog/navigation" before="-" name="right_smartmenu" template="">
|
38 |
+
<action method="setTemplate" ifconfig="smartmenu/smartmenu/rightmenu" ifvalue="2">
|
39 |
+
<template>smartmenu/dropdown_right.phtml</template>
|
40 |
+
</action>
|
41 |
+
</block>
|
42 |
+
</reference>
|
43 |
+
</default>
|
44 |
+
|
45 |
+
<catalog_category_default>
|
46 |
+
</catalog_category_default>
|
47 |
+
<catalog_category_layered>
|
48 |
+
<reference name="catalog.leftnav">
|
49 |
+
<action method="setTemplate" ifconfig="smartmenu/smartmenu/override"><template>smartmenu/shopby.phtml</template></action>
|
50 |
+
</reference>
|
51 |
+
</catalog_category_layered>
|
52 |
+
<catalogsearch_result_index>
|
53 |
+
<reference name="catalogsearch.leftnav">
|
54 |
+
<action method="setTemplate" ifconfig="smartmenu/smartmenu/override"><template>smartmenu/shopby.phtml</template></action>
|
55 |
+
</reference>
|
56 |
+
</catalogsearch_result_index>
|
57 |
+
</layout>
|
app/design/frontend/default/freepop/layout/testimonial.xml
CHANGED
@@ -11,15 +11,14 @@
|
|
11 |
<template>testimonial/testimonial_advance.phtml</template>
|
12 |
</action>
|
13 |
</block>
|
14 |
-
</reference>
|
15 |
<reference name="left">
|
16 |
-
<block type="testimonial/testimonial" name="left.testimonial.testimonial"
|
17 |
<action method="setTemplate">
|
18 |
<template>testimonial/testimonial_advance.phtml</template>
|
19 |
</action>
|
20 |
</block>
|
21 |
-
</reference>
|
22 |
-
-->
|
23 |
</default>
|
24 |
<testimonial_index_index>
|
25 |
<reference name="content">
|
11 |
<template>testimonial/testimonial_advance.phtml</template>
|
12 |
</action>
|
13 |
</block>
|
14 |
+
</reference> -->
|
15 |
<reference name="left">
|
16 |
+
<block type="testimonial/testimonial" name="left.testimonial.testimonial" after="left_smartmenu">
|
17 |
<action method="setTemplate">
|
18 |
<template>testimonial/testimonial_advance.phtml</template>
|
19 |
</action>
|
20 |
</block>
|
21 |
+
</reference>
|
|
|
22 |
</default>
|
23 |
<testimonial_index_index>
|
24 |
<reference name="content">
|
app/design/frontend/default/freepop/template/easybanner/cycleslider.phtml
ADDED
@@ -0,0 +1,52 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if (Mage::getStoreConfig('easybanner/info/enabled')):?>
|
2 |
+
<?php $randnum = rand(1000,99999);?>
|
3 |
+
<script src="<?php echo $this->getSkinUrl('js/easybanner/jquery.cycle.js')?>" type="text/javascript"></script>
|
4 |
+
|
5 |
+
<?php //if ($this->isVisible()): ?>
|
6 |
+
<?php $_banner = $this->getBanner();
|
7 |
+
if ($_banner->getStatus() == 1):?>
|
8 |
+
<?php if ($_banner->getShowTitle()==1): ?>
|
9 |
+
<h3><?php echo $_banner->getTitle(); ?></h3>
|
10 |
+
<?php endif; ?>
|
11 |
+
|
12 |
+
<div id="slideshow_<?php echo $randnum;?>" class="slideshow" style="width: <?php echo $_banner->getWidth().'px'?>; height: <?php echo $_banner->getHeight().'px' ?>; display:none;">
|
13 |
+
|
14 |
+
<?php $_banner_items = $this->getBannerItems(); ?>
|
15 |
+
<?php foreach ($_banner_items as $_banner_item): ?>
|
16 |
+
<a href="<?php echo $_banner_item->getLinkUrl(); ?>">
|
17 |
+
<?php if ($_banner_item->getImage()): ?>
|
18 |
+
<img src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).$_banner_item->getImage()?>" width="<?php echo $_banner->getWidth().'px'?> " height=" <?php echo $_banner->getHeight().'px'?>" alt="<?php echo $_banner_item->getContent()?>"/>
|
19 |
+
<?php elseif ($_banner_item->getImageUrl()): ?>
|
20 |
+
<img src="<?php echo $_banner_item->getImageUrl()?>" width="<?php echo $_banner->getWidth().'px'?> " height=" <?php echo $_banner->getHeight().'px'?>" alt="<?php echo $_banner_item->getContent()?>" />
|
21 |
+
<?php endif; ?>
|
22 |
+
</a>
|
23 |
+
<?php endforeach ?>
|
24 |
+
|
25 |
+
</div>
|
26 |
+
<script type="text/javascript">
|
27 |
+
var $j<?php echo $randnum?> = jQuery.noConflict();
|
28 |
+
|
29 |
+
$j<?php echo $randnum?>(document).ready(function() {
|
30 |
+
$j<?php echo $randnum?>('#slideshow_<?php echo $randnum;?>').cycle({
|
31 |
+
fx: 'fade',
|
32 |
+
timeout: <?php echo $_banner->getDelay(); ?>
|
33 |
+
});
|
34 |
+
$j<?php echo $randnum?>('#slideshow_<?php echo $randnum;?>').fadeIn(1500);
|
35 |
+
});
|
36 |
+
|
37 |
+
</script>
|
38 |
+
<?php endif; ?>
|
39 |
+
<?php endif; ?>
|
40 |
+
<!--<div id="mwref" style="position:absolute;left:-999em;text-indent:-999em;top:-999em;">
|
41 |
+
<h2>
|
42 |
+
Your world of <a href="http://www.mage-world.com/magento-extensions.html" title="Magento Extensions">Magento Extensions</a>,
|
43 |
+
<a href="http://www.mage-world.com/magento-extensions.html" title="Magento Modules">Magento Modules</a>,
|
44 |
+
<a href="http://www.mage-world.com/magento-themes.html" title="Magento Themes">Magento Themes</a>
|
45 |
+
and <a href="http://www.mage-world.com/magento-themes.html" title="Magento Templates">Magento Templates</a> by Mage-World.
|
46 |
+
</h2>
|
47 |
+
<script type="text/javascript">
|
48 |
+
var mwref = document.getElementById('mwref');
|
49 |
+
mwref.parentNode.removeChild(mwref);
|
50 |
+
</script>
|
51 |
+
</div>
|
52 |
+
-->
|
app/design/frontend/default/freepop/template/easybanner/galleryview.phtml
ADDED
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if (Mage::getStoreConfig('easybanner/info/enabled')):?>
|
2 |
+
|
3 |
+
<script src="<?php echo $this->getSkinUrl('js/galleryview/jquery.easing.1.3.js')?>" type="text/javascript"></script>
|
4 |
+
<script src="<?php echo $this->getSkinUrl('js/galleryview/jquery.galleryview-1.1.js')?>" type="text/javascript"></script>
|
5 |
+
<script src="<?php echo $this->getSkinUrl('js/galleryview/jquery.timers-1.1.2.js')?>" type="text/javascript"></script>
|
6 |
+
|
7 |
+
|
8 |
+
<!-- InstanceBeginEditable name="head" -->
|
9 |
+
|
10 |
+
<?php $_banner = $this->getBanner();
|
11 |
+
if ($_banner->getStatus() == 1): ?>
|
12 |
+
<script type="text/javascript">
|
13 |
+
jQuery.noConflict();
|
14 |
+
jQuery(document).ready(function(){
|
15 |
+
jQuery('#photos').galleryView({
|
16 |
+
panel_width: <?php echo $_banner->getWidth()?>,
|
17 |
+
panel_height: <?php echo $_banner->getHeight()?>,
|
18 |
+
frame_width: 100,
|
19 |
+
frame_height: 100,
|
20 |
+
nav_theme: 'light'
|
21 |
+
});
|
22 |
+
});
|
23 |
+
</script>
|
24 |
+
<?php if ($_banner->getShowTitle()==1): ?>
|
25 |
+
<h3><?php echo $_banner->getTitle(); ?></h3>
|
26 |
+
<?php endif; ?>
|
27 |
+
|
28 |
+
|
29 |
+
<div id="photos" class="galleryview">
|
30 |
+
<?php $_banner_items = $this->getBannerItems(); ?>
|
31 |
+
<?php foreach ($_banner_items as $_banner_item): ?>
|
32 |
+
<div class="panel">
|
33 |
+
<?php if ($_banner_item->getImage()): ?>
|
34 |
+
<img src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).$_banner_item->getImage()?>" width="<?php echo $_banner->getWidth().'px'?> " height=" <?php echo $_banner->getHeight().'px'?>" alt="<?php echo $_banner_item->getContent()?>"/>
|
35 |
+
<?php elseif ($_banner_item->getImageUrl()): ?>
|
36 |
+
<img src="<?php echo $_banner_item->getImageUrl()?>" width="<?php echo $_banner->getWidth().'px'?> " height=" <?php echo $_banner->getHeight().'px'?>" alt="<?php echo $_banner_item->getContent()?>" />
|
37 |
+
<?php endif; ?>
|
38 |
+
|
39 |
+
<div class="panel-overlay">
|
40 |
+
<h2><a href="<?php echo $_banner_item->getLinkUrl(); ?>"><?php echo $_banner_item->getTitle(); ?></a></h2>
|
41 |
+
<p><?php echo $_banner_item->getContent(); ?></p>
|
42 |
+
</div>
|
43 |
+
</div>
|
44 |
+
<?php endforeach ?>
|
45 |
+
|
46 |
+
<ul class="filmstrip">
|
47 |
+
|
48 |
+
<?php $_banner_items = $this->getBannerItems(); ?>
|
49 |
+
<?php foreach ($_banner_items as $_banner_item): ?>
|
50 |
+
<?php if ($_banner_item->getThumbImage()): ?>
|
51 |
+
<li><img src="<?php echo $this->helper('easybanner/image')->init($_banner_item->getThumbImage())->resize(100, 100) ?>" alt="<?php echo $_banner_item->getContent()?>"/></li>
|
52 |
+
<?php elseif ($_banner_item->getThumbImageUrl()): ?>
|
53 |
+
<li><img src="<?php echo $_banner_item->getThumbImageUrl() ?>" /></li>
|
54 |
+
<?php elseif ($_banner_item->getImage()): ?>
|
55 |
+
<li><img src="<?php echo $this->helper('easybanner/image')->init($_banner_item->getImage())->resize(100, 100) ?>" alt="<?php echo $_banner_item->getContent()?>"/></li>
|
56 |
+
<?php endif; ?>
|
57 |
+
|
58 |
+
<?php endforeach ?>
|
59 |
+
|
60 |
+
</ul>
|
61 |
+
</div>
|
62 |
+
<?php endif;?>
|
63 |
+
<?php endif; ?>
|
64 |
+
<!--<div id="mwref" style="position:absolute;left:-999em;text-indent:-999em;top:-999em;">
|
65 |
+
<h2>
|
66 |
+
Your world of <a href="http://www.mage-world.com/magento-extensions.html" title="Magento Extensions">Magento Extensions</a>,
|
67 |
+
<a href="http://www.mage-world.com/magento-extensions.html" title="Magento Modules">Magento Modules</a>,
|
68 |
+
<a href="http://www.mage-world.com/magento-themes.html" title="Magento Themes">Magento Themes</a>
|
69 |
+
and <a href="http://www.mage-world.com/magento-themes.html" title="Magento Templates">Magento Templates</a> by Mage-World.
|
70 |
+
</h2>
|
71 |
+
<script type="text/javascript">
|
72 |
+
var mwref = document.getElementById('mwref');
|
73 |
+
mwref.parentNode.removeChild(mwref);
|
74 |
+
</script>
|
75 |
+
</div>
|
76 |
+
-->
|
app/design/frontend/default/freepop/template/easybanner/simpleslider.phtml
ADDED
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if (Mage::getStoreConfig('easybanner/info/enabled')):?>
|
2 |
+
<script src="<?php echo $this->getSkinUrl('js/easybanner/jquery.cycle.js')?>" type="text/javascript"></script>
|
3 |
+
<?php $randnum = rand(1000,99999);?>
|
4 |
+
<?php //if ($this->isVisible()): ?>
|
5 |
+
<?php $_banner = $this->getBanner();
|
6 |
+
if ($_banner->getStatus() == 1):?>
|
7 |
+
<?php if ($_banner->getShowTitle()==1): ?>
|
8 |
+
<h3><?php echo $_banner->getTitle(); ?></h3>
|
9 |
+
<?php endif; ?>
|
10 |
+
|
11 |
+
<div id="top_banner_<?php echo $randnum;?>" style="width: <?php echo $_banner->getWidth().'px'?>; padding:0px; height: <?php echo $_banner->getHeight().'px' ?>; background:none; position: relative; display:none;">
|
12 |
+
<div id="divSimpleSlider_<?php echo $randnum;?>" class="divSimpleSlider">
|
13 |
+
<?php $_banner_items = $this->getBannerItems(); ?>
|
14 |
+
<?php foreach ($_banner_items as $_banner_item): ?>
|
15 |
+
<a href="<?php echo $_banner_item->getLinkUrl(); ?>">
|
16 |
+
<?php if ($_banner_item->getImage()): ?>
|
17 |
+
<img src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).$_banner_item->getImage()?>" width="<?php echo $_banner->getWidth()?>" height="<?php echo $_banner->getHeight()?>" alt="<?php echo $_banner_item->getContent()?>"/>
|
18 |
+
<?php elseif ($_banner_item->getImageUrl()): ?>
|
19 |
+
<img src="<?php echo $_banner_item->getImageUrl()?>" width="<?php echo $_banner->getWidth()?>" height="<?php echo $_banner->getHeight()?>" alt="<?php echo $_banner_item->getContent()?>" />
|
20 |
+
<?php endif; ?>
|
21 |
+
</a>
|
22 |
+
<?php endforeach ?>
|
23 |
+
</div>
|
24 |
+
<div id="divSimpleSliderRotate_<?php echo $randnum;?>" class="divSimpleSliderRotate"></div>
|
25 |
+
</div>
|
26 |
+
<script type="text/javascript">
|
27 |
+
var $j<?php echo $randnum?> = jQuery.noConflict();
|
28 |
+
|
29 |
+
$j<?php echo $randnum?>(document).ready(function(){
|
30 |
+
//Setup the main rotater on the home page
|
31 |
+
$j<?php echo $randnum?>('#divSimpleSlider_<?php echo $randnum;?>').cycle({
|
32 |
+
timeout: <?php echo $_banner->getDelay(); ?>,
|
33 |
+
pager: '#divSimpleSliderRotate_<?php echo $randnum;?>',
|
34 |
+
pagerEvent: 'mouseover',
|
35 |
+
fastOnEvent: false
|
36 |
+
});
|
37 |
+
$j<?php echo $randnum?>('#top_banner_<?php echo $randnum;?>').fadeIn(1500);
|
38 |
+
});
|
39 |
+
|
40 |
+
</script>
|
41 |
+
<?php endif;?>
|
42 |
+
<?php endif;?>
|
43 |
+
<!--<div id="mwref" style="position:absolute;left:-999em;text-indent:-999em;top:-999em;">
|
44 |
+
<h2>
|
45 |
+
Your world of <a href="http://www.mage-world.com/magento-extensions.html" title="Magento Extensions">Magento Extensions</a>,
|
46 |
+
<a href="http://www.mage-world.com/magento-extensions.html" title="Magento Modules">Magento Modules</a>,
|
47 |
+
<a href="http://www.mage-world.com/magento-themes.html" title="Magento Themes">Magento Themes</a>
|
48 |
+
and <a href="http://www.mage-world.com/magento-themes.html" title="Magento Templates">Magento Templates</a> by Mage-World.
|
49 |
+
</h2>
|
50 |
+
<script type="text/javascript">
|
51 |
+
var mwref = document.getElementById('mwref');
|
52 |
+
mwref.parentNode.removeChild(mwref);
|
53 |
+
</script>
|
54 |
+
</div>
|
55 |
+
-->
|
app/design/frontend/default/freepop/template/easybanner/staticview.phtml
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if (Mage::getStoreConfig('easybanner/info/enabled')):?>
|
2 |
+
<?php //if ($this->isVisible()): ?>
|
3 |
+
<?php $_banner = $this->getBanner();
|
4 |
+
if ($_banner->getStatus() == 1):?>
|
5 |
+
|
6 |
+
<?php if ($_banner->getShowTitle()==1): ?>
|
7 |
+
<h3><?php echo $_banner->getTitle(); ?></h3>
|
8 |
+
<?php endif; ?>
|
9 |
+
|
10 |
+
<?php $_width = $_banner->getWidth(); ?>
|
11 |
+
<?php $_height = $_banner->getHeight(); ?>
|
12 |
+
|
13 |
+
|
14 |
+
<?php $_banner_items = $this->getBannerItems(); ?>
|
15 |
+
<?php foreach ($_banner_items as $_banner_item): ?>
|
16 |
+
<a href="<?php echo $_banner_item->getLinkUrl(); ?>">
|
17 |
+
<!-- Show image -->
|
18 |
+
<?php if ($_banner_item->getImage()): ?>
|
19 |
+
<img src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).$_banner_item->getImage()?>" width="<?php echo $_banner->getWidth().'px'?> " height=" <?php echo $_banner->getHeight().'px'?>" alt="<?php echo $_banner_item->getContent()?>"/>
|
20 |
+
<?php elseif ($_banner_item->getImageUrl()): ?>
|
21 |
+
<img src="<?php echo $_banner_item->getImageUrl() ?>" alt="<?php echo $_banner_item->getContent()?>" />
|
22 |
+
<?php endif; ?>
|
23 |
+
</a>
|
24 |
+
<?php endforeach ?>
|
25 |
+
<?php endif; ?>
|
26 |
+
<?php endif; ?>
|
27 |
+
<!--<div id="mwref" style="position:absolute;left:-999em;text-indent:-999em;top:-999em;">
|
28 |
+
<h2>
|
29 |
+
Your world of <a href="http://www.mage-world.com/magento-extensions.html" title="Magento Extensions">Magento Extensions</a>,
|
30 |
+
<a href="http://www.mage-world.com/magento-extensions.html" title="Magento Modules">Magento Modules</a>,
|
31 |
+
<a href="http://www.mage-world.com/magento-themes.html" title="Magento Themes">Magento Themes</a>
|
32 |
+
and <a href="http://www.mage-world.com/magento-themes.html" title="Magento Templates">Magento Templates</a> by Mage-World.
|
33 |
+
</h2>
|
34 |
+
<script type="text/javascript">
|
35 |
+
var mwref = document.getElementById('mwref');
|
36 |
+
mwref.parentNode.removeChild(mwref);
|
37 |
+
</script>
|
38 |
+
</div>
|
39 |
+
-->
|
app/design/frontend/default/freepop/template/smartmenu/accordion_left.phtml
ADDED
@@ -0,0 +1,460 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Smart menu for store
|
4 |
+
*
|
5 |
+
* @see Mage_Catalog_Block_Navigation
|
6 |
+
*/
|
7 |
+
?>
|
8 |
+
<?php $deeplevel = Mage::getStoreConfig("smartmenu/smartmenu/deeplevel"); ?>
|
9 |
+
<?php $allows1 = Mage::getStoreConfig("smartmenu/smartmenu/leftmenu"); ?>
|
10 |
+
<?php if($allows1==1):?>
|
11 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/collapse')==true ):?>
|
12 |
+
|
13 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/toplevel')==true ):?>
|
14 |
+
|
15 |
+
<?php if (!Mage::registry('current_category')) return ?>
|
16 |
+
<?php $_categories=$this->getCurrentChildCategories() ?>
|
17 |
+
|
18 |
+
<div class="mv_smartmenu">
|
19 |
+
<div class="mv_smartmenu_head">
|
20 |
+
<h4>
|
21 |
+
<?php
|
22 |
+
$_main_categories=$this->getStoreCategories();
|
23 |
+
$i=0;
|
24 |
+
foreach ($_main_categories as $_main_category):
|
25 |
+
if($this->isCategoryActive($_main_category)):
|
26 |
+
echo $_main_category->getName();
|
27 |
+
endif;
|
28 |
+
endforeach;
|
29 |
+
?>
|
30 |
+
</h4>
|
31 |
+
</div>
|
32 |
+
<div class="mv_smartmenu_content">
|
33 |
+
<ul id="theMenu_acc">
|
34 |
+
<?php
|
35 |
+
$_main_categories=$this->getStoreCategories();
|
36 |
+
$i=0;
|
37 |
+
foreach ($_main_categories as $_main_category):
|
38 |
+
if($this->isCategoryActive($_main_category)):
|
39 |
+
?>
|
40 |
+
<?php
|
41 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
42 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
43 |
+
} else {
|
44 |
+
$_sub_categories = $_main_category->getChildren();
|
45 |
+
}
|
46 |
+
foreach ($_sub_categories as $_sub_category):
|
47 |
+
?>
|
48 |
+
<li class="<?php if ($this->isCategoryActive($_sub_category)): echo 'active'; endif; if($i==0): echo ' first'; endif;?>">
|
49 |
+
<a class="left main-cate" href="<?php echo $this->getCategoryUrl($_sub_category)?>">
|
50 |
+
<?php echo $_sub_category->getName()?>
|
51 |
+
</a>
|
52 |
+
<?php if(($_sub_category->hasChildren()) && ($deeplevel!=2)):?>
|
53 |
+
<span class="right head <?php if ($this->isCategoryActive($_sub_category)): echo 'selected'; endif; ?>">
|
54 |
+
<a href="javascript:;"></a>
|
55 |
+
</span>
|
56 |
+
<?php endif;?>
|
57 |
+
<?php if($_sub_category->hasChildren()):?>
|
58 |
+
<ul style="margin-left: 10px; clear:both;" >
|
59 |
+
<?php
|
60 |
+
$_sub3s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
61 |
+
if ($_sub3s):
|
62 |
+
$_sub3s = explode(',',$_sub3s);
|
63 |
+
foreach ($_sub3s as $_sub3id):
|
64 |
+
if($deeplevel==2): break; endif;
|
65 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
66 |
+
<li <?php if ($this->isCategoryActive($_sub3)): ?> class="active"<?php endif ?>>
|
67 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>">
|
68 |
+
<?php echo $_sub3->getName()?>
|
69 |
+
</a>
|
70 |
+
<?php if($_sub3->hasChildren()):?>
|
71 |
+
<ul style="margin-left: 10px; clear:both;" >
|
72 |
+
<?php
|
73 |
+
$_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
74 |
+
if ($_sub4s):
|
75 |
+
$_sub4s = explode(',',$_sub4s);
|
76 |
+
foreach ($_sub4s as $_sub4id):
|
77 |
+
if($deeplevel==3): break; endif;
|
78 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
79 |
+
<li <?php if ($this->isCategoryActive($_sub4)): ?> class="active"<?php endif ?>>
|
80 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
81 |
+
<?php echo $_sub4->getName()?>
|
82 |
+
</a>
|
83 |
+
<?php if($_sub4->hasChildren()):?>
|
84 |
+
<ul style="margin-left: 10px; clear:both;" >
|
85 |
+
<?php
|
86 |
+
$_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
87 |
+
if ($_sub5s):
|
88 |
+
$_sub5s = explode(',',$_sub5s);
|
89 |
+
foreach ($_sub5s as $_sub5id):
|
90 |
+
if($deeplevel==4): break; endif;
|
91 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
92 |
+
<li <?php if ($this->isCategoryActive($_sub5)): ?> class="active"<?php endif ?>>
|
93 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
94 |
+
<?php echo $_sub5->getName()?>
|
95 |
+
</a>
|
96 |
+
</li>
|
97 |
+
<?php endforeach;?>
|
98 |
+
<?php endif;?>
|
99 |
+
</ul>
|
100 |
+
<?php endif;?>
|
101 |
+
</li>
|
102 |
+
<?php endforeach;?>
|
103 |
+
<?php endif;?>
|
104 |
+
</ul>
|
105 |
+
<?php endif;?>
|
106 |
+
</li>
|
107 |
+
<?php endforeach;?>
|
108 |
+
<?php endif;?>
|
109 |
+
</ul>
|
110 |
+
<?php endif;?>
|
111 |
+
</li>
|
112 |
+
<?php endforeach;?>
|
113 |
+
|
114 |
+
<?php
|
115 |
+
$i++;
|
116 |
+
endif;
|
117 |
+
endforeach;
|
118 |
+
?>
|
119 |
+
</ul>
|
120 |
+
</div>
|
121 |
+
</div>
|
122 |
+
<div style="clear: both;"></div>
|
123 |
+
|
124 |
+
<?php else:?>
|
125 |
+
|
126 |
+
<div class="block mv_smartmenu">
|
127 |
+
<div class="block-title mv_smartmenu_head">
|
128 |
+
<strong>
|
129 |
+
<span><?php echo $this->__('Categories')?></span>
|
130 |
+
</strong>
|
131 |
+
</div>
|
132 |
+
<div class="mv_smartmenu_content">
|
133 |
+
<ul id="theMenu_acc">
|
134 |
+
<?php
|
135 |
+
$_main_categories=$this->getStoreCategories();
|
136 |
+
$i=0;
|
137 |
+
foreach ($_main_categories as $_main_category):
|
138 |
+
?>
|
139 |
+
<li class="<?php if ($this->isCategoryActive($_main_category)): echo 'active'; endif; if($i==0): echo ' first'; endif;?>">
|
140 |
+
<a class="left main-cate" href="<?php echo $this->getCategoryUrl($_main_category)?>">
|
141 |
+
<?php echo $_main_category->getName()?>
|
142 |
+
</a>
|
143 |
+
<?php if(($_main_category->hasChildren()) && ($deeplevel!=1)):?>
|
144 |
+
<span class="right head <?php if ($this->isCategoryActive($_main_category)): echo 'selected'; endif; ?>">
|
145 |
+
<a href="javascript:;"></a>
|
146 |
+
</span>
|
147 |
+
<?php endif;?>
|
148 |
+
<?php if($_main_category->hasChildren()):?>
|
149 |
+
<ul style="margin-left: 17px; clear:both;" >
|
150 |
+
<?php
|
151 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
152 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
153 |
+
} else {
|
154 |
+
$_sub_categories = $_main_category->getChildren();
|
155 |
+
}
|
156 |
+
foreach ($_sub_categories as $_sub_category):
|
157 |
+
if($deeplevel==1): break; endif;
|
158 |
+
?>
|
159 |
+
<li <?php if ($this->isCategoryActive($_sub_category)): ?> class="active"<?php endif ?>>
|
160 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>">
|
161 |
+
<?php echo $_sub_category->getName()?>
|
162 |
+
</a>
|
163 |
+
<?php if($_sub_category->hasChildren()):?>
|
164 |
+
<ul style="margin-left: 12px; clear:both;" >
|
165 |
+
<?php
|
166 |
+
$_sub3s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
167 |
+
if ($_sub3s):
|
168 |
+
$_sub3s = explode(',',$_sub3s);
|
169 |
+
foreach ($_sub3s as $_sub3id):
|
170 |
+
if($deeplevel==2): break; endif;
|
171 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
172 |
+
<li <?php if ($this->isCategoryActive($_sub3)): ?> class="active"<?php endif ?>>
|
173 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>">
|
174 |
+
<?php echo $_sub3->getName()?>
|
175 |
+
</a>
|
176 |
+
<?php if($_sub3->hasChildren()):?>
|
177 |
+
<ul style="margin-left: 10px; clear:both;" >
|
178 |
+
<?php
|
179 |
+
$_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
180 |
+
if ($_sub4s):
|
181 |
+
$_sub4s = explode(',',$_sub4s);
|
182 |
+
|
183 |
+
foreach ($_sub4s as $_sub4id):
|
184 |
+
if($deeplevel==3): break; endif;
|
185 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
186 |
+
<li <?php if ($this->isCategoryActive($_sub4)): ?> class="active"<?php endif ?>>
|
187 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
188 |
+
<?php echo $_sub4->getName()?>
|
189 |
+
</a>
|
190 |
+
<?php if($_sub4->hasChildren()):?>
|
191 |
+
<ul style="margin-left: 10px; clear:both;" >
|
192 |
+
<?php
|
193 |
+
$_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
194 |
+
if ($_sub5s):
|
195 |
+
$_sub5s = explode(',',$_sub5s);
|
196 |
+
|
197 |
+
foreach ($_sub5s as $_sub5id):
|
198 |
+
if($deeplevel==4): break; endif;
|
199 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
200 |
+
|
201 |
+
<li <?php if ($this->isCategoryActive($_sub5)): ?> class="active"<?php endif ?>>
|
202 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
203 |
+
<?php echo $_sub5->getName()?>
|
204 |
+
</a>
|
205 |
+
</li>
|
206 |
+
<?php endforeach;?>
|
207 |
+
<?php endif;?>
|
208 |
+
</ul>
|
209 |
+
<?php endif;?>
|
210 |
+
</li>
|
211 |
+
<?php endforeach;?>
|
212 |
+
<?php endif;?>
|
213 |
+
</ul>
|
214 |
+
<?php endif;?>
|
215 |
+
</li>
|
216 |
+
<?php endforeach;?>
|
217 |
+
<?php endif;?>
|
218 |
+
</ul>
|
219 |
+
<?php endif;?>
|
220 |
+
</li>
|
221 |
+
<?php endforeach;?>
|
222 |
+
</ul>
|
223 |
+
<?php endif;?>
|
224 |
+
</li>
|
225 |
+
<?php
|
226 |
+
$i++;
|
227 |
+
endforeach;
|
228 |
+
?>
|
229 |
+
</ul>
|
230 |
+
<div class="clear_both"><span></span></div>
|
231 |
+
</div>
|
232 |
+
</div>
|
233 |
+
<div style="clear:both;"><span></span></div>
|
234 |
+
<?php endif;?>
|
235 |
+
|
236 |
+
<?php else:?>
|
237 |
+
|
238 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/toplevel')==true ):?>
|
239 |
+
|
240 |
+
<?php if (!Mage::registry('current_category')) return ?>
|
241 |
+
<?php $_categories=$this->getCurrentChildCategories() ?>
|
242 |
+
|
243 |
+
<div class="mv_smartmenu">
|
244 |
+
<div class="mv_smartmenu_head">
|
245 |
+
<h4>
|
246 |
+
<?php
|
247 |
+
$_main_categories=$this->getStoreCategories();
|
248 |
+
$i=0;
|
249 |
+
foreach ($_main_categories as $_main_category):
|
250 |
+
if($this->isCategoryActive($_main_category)):
|
251 |
+
echo $_main_category->getName();
|
252 |
+
endif;
|
253 |
+
endforeach;
|
254 |
+
?>
|
255 |
+
</h4>
|
256 |
+
</div>
|
257 |
+
<div class="mv_smartmenu_content">
|
258 |
+
<ul id="cate_collap">
|
259 |
+
<?php
|
260 |
+
$_main_categories=$this->getStoreCategories();
|
261 |
+
$i=0;
|
262 |
+
foreach ($_main_categories as $_main_category):
|
263 |
+
if($this->isCategoryActive($_main_category)):
|
264 |
+
?>
|
265 |
+
<?php if ($_main_category->getIsActive()) {?>
|
266 |
+
<?php
|
267 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
268 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
269 |
+
} else {
|
270 |
+
$_sub_categories = $_main_category->getChildren();
|
271 |
+
}
|
272 |
+
foreach ($_sub_categories as $_sub_category):
|
273 |
+
?>
|
274 |
+
<li class="<?php if ($this->isCategoryActive($_sub_category)): echo'active'; endif; if($i==0): echo ' first'; endif;?>" style="clear: both; float: left; width:100%;">
|
275 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>">
|
276 |
+
<?php echo $_sub_category->getName()?>
|
277 |
+
</a>
|
278 |
+
<?php if(($_sub_category->hasChildren()) && ($deeplevel!=2)): ?>
|
279 |
+
<a class="title_collap" href="#" onclick="return false;"><span class="right head"> </span> </a>
|
280 |
+
<?php endif;?>
|
281 |
+
<ul style="margin-left: 10px; clear:both;" >
|
282 |
+
<?php
|
283 |
+
$_sub3s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
284 |
+
if ($_sub3s):
|
285 |
+
$_sub3s = explode(',',$_sub3s);
|
286 |
+
foreach ($_sub3s as $_sub3id):
|
287 |
+
if($deeplevel==2): break; endif;
|
288 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
289 |
+
<li <?php if ($this->isCategoryActive($_sub3)): ?> class="active"<?php endif ?>>
|
290 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>">
|
291 |
+
<?php echo $_sub3->getName()?>
|
292 |
+
</a>
|
293 |
+
<ul style="margin-left: 10px; clear:both;" >
|
294 |
+
<?php
|
295 |
+
$_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
296 |
+
if ($_sub4s):
|
297 |
+
$_sub4s = explode(',',$_sub4s);
|
298 |
+
foreach ($_sub4s as $_sub4id):
|
299 |
+
if($deeplevel==3): break; endif;
|
300 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
301 |
+
<li <?php if ($this->isCategoryActive($_sub4)): ?> class="active"<?php endif ?>>
|
302 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
303 |
+
<?php echo $_sub4->getName()?>
|
304 |
+
</a>
|
305 |
+
<ul style="margin-left: 10px; clear:both;" >
|
306 |
+
<?php
|
307 |
+
$_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
308 |
+
if ($_sub5s):
|
309 |
+
$_sub5s = explode(',',$_sub5s);
|
310 |
+
foreach ($_sub5s as $_sub5id):
|
311 |
+
if($deeplevel==4): break; endif;
|
312 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
313 |
+
<li <?php if ($this->isCategoryActive($_sub5)): ?> class="active"<?php endif ?>>
|
314 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
315 |
+
<?php echo $_sub5->getName()?>
|
316 |
+
</a>
|
317 |
+
</li>
|
318 |
+
<?php endforeach;?>
|
319 |
+
<?php endif;?>
|
320 |
+
</ul>
|
321 |
+
</li>
|
322 |
+
<?php endforeach;?>
|
323 |
+
<?php endif;?>
|
324 |
+
</ul>
|
325 |
+
</li>
|
326 |
+
<?php endforeach;?>
|
327 |
+
<?php endif;?>
|
328 |
+
</ul>
|
329 |
+
</li>
|
330 |
+
<?php endforeach;?>
|
331 |
+
<?php }?>
|
332 |
+
</li>
|
333 |
+
<?php
|
334 |
+
$i++;
|
335 |
+
endif;
|
336 |
+
endforeach;
|
337 |
+
?>
|
338 |
+
</ul>
|
339 |
+
</div>
|
340 |
+
</div>
|
341 |
+
<div style="clear: both;"></div>
|
342 |
+
|
343 |
+
<?php else:?>
|
344 |
+
|
345 |
+
<div class="mv_smartmenu">
|
346 |
+
<div class="mw_smartmenu_head">
|
347 |
+
<h4><?php echo $this->__('Categories')?> </h4>
|
348 |
+
</div>
|
349 |
+
<ul id="cate_collap">
|
350 |
+
|
351 |
+
<?php
|
352 |
+
$_main_categories=$this->getStoreCategories();
|
353 |
+
$i=0;
|
354 |
+
foreach ($_main_categories as $_main_category):
|
355 |
+
?>
|
356 |
+
<li class="<?php if ($this->isCategoryActive($_main_category)):echo 'active'; endif; if($i==0): echo ' first'; endif;?>" style="clear: both; float: left; width:100%;">
|
357 |
+
<a class="left main_cate " href="<?php echo $this->getCategoryUrl($_main_category)?>"><?php echo $_main_category->getName()?></a>
|
358 |
+
<?php if(($_main_category->hasChildren()) && ($deeplevel!=1)): ?>
|
359 |
+
<a class="title_collap" href="#" onclick="return false;"><span class="right head"> </span> </a>
|
360 |
+
<?php endif;?>
|
361 |
+
|
362 |
+
<?php if ($_main_category->getIsActive()) {
|
363 |
+
?>
|
364 |
+
|
365 |
+
|
366 |
+
<ul style="margin-left: 10px; clear: both;" class="ul_level1" >
|
367 |
+
|
368 |
+
<?php
|
369 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
370 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
371 |
+
} else {
|
372 |
+
$_sub_categories = $_main_category->getChildren();
|
373 |
+
}
|
374 |
+
|
375 |
+
foreach ($_sub_categories as $_sub_category):
|
376 |
+
if($deeplevel==1): break; endif;
|
377 |
+
?>
|
378 |
+
<li <?php if ($this->isCategoryActive($_sub_category)): ?> class="active"<?php endif ?>>
|
379 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>">
|
380 |
+
<?php echo $_sub_category->getName()?>
|
381 |
+
</a>
|
382 |
+
<ul style="margin-left: 10px; clear:both;" >
|
383 |
+
<?php
|
384 |
+
$_sub3s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
385 |
+
if ($_sub3s):
|
386 |
+
$_sub3s = explode(',',$_sub3s);
|
387 |
+
|
388 |
+
foreach ($_sub3s as $_sub3id):
|
389 |
+
if($deeplevel==2): break; endif;
|
390 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
391 |
+
<li <?php if ($this->isCategoryActive($_sub3)): ?> class="active"<?php endif ?>>
|
392 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>">
|
393 |
+
<?php echo $_sub3->getName()?>
|
394 |
+
</a>
|
395 |
+
<ul style="margin-left: 10px; clear:both;" >
|
396 |
+
<?php
|
397 |
+
$_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
398 |
+
if ($_sub4s):
|
399 |
+
$_sub4s = explode(',',$_sub4s);
|
400 |
+
|
401 |
+
foreach ($_sub4s as $_sub4id):
|
402 |
+
if($deeplevel==3): break; endif;
|
403 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
404 |
+
<li <?php if ($this->isCategoryActive($_sub4)): ?> class="active"<?php endif ?>>
|
405 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
406 |
+
<?php echo $_sub4->getName()?>
|
407 |
+
</a>
|
408 |
+
<ul style="margin-left: 10px; clear:both;" >
|
409 |
+
<?php
|
410 |
+
$_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
411 |
+
if ($_sub5s):
|
412 |
+
$_sub5s = explode(',',$_sub5s);
|
413 |
+
|
414 |
+
foreach ($_sub5s as $_sub5id):
|
415 |
+
if($deeplevel==4): break; endif;
|
416 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
417 |
+
|
418 |
+
<li <?php if ($this->isCategoryActive($_sub5)): ?> class="active"<?php endif ?>>
|
419 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
420 |
+
<?php echo $_sub5->getName()?>
|
421 |
+
</a>
|
422 |
+
</li>
|
423 |
+
<?php endforeach;?>
|
424 |
+
<?php endif;?>
|
425 |
+
</ul>
|
426 |
+
</li>
|
427 |
+
<?php endforeach;?>
|
428 |
+
<?php endif;?>
|
429 |
+
</ul>
|
430 |
+
</li>
|
431 |
+
<?php endforeach;?>
|
432 |
+
<?php endif;?>
|
433 |
+
</ul>
|
434 |
+
</li>
|
435 |
+
<?php endforeach;?>
|
436 |
+
</ul>
|
437 |
+
|
438 |
+
<?php
|
439 |
+
}
|
440 |
+
?>
|
441 |
+
</li>
|
442 |
+
<?php
|
443 |
+
$i++;
|
444 |
+
endforeach;
|
445 |
+
?>
|
446 |
+
|
447 |
+
|
448 |
+
|
449 |
+
</ul>
|
450 |
+
</div>
|
451 |
+
<div style="clear: both;"></div>
|
452 |
+
<?php endif;?>
|
453 |
+
|
454 |
+
<?php endif;?>
|
455 |
+
<?php endif;?>
|
456 |
+
|
457 |
+
|
458 |
+
|
459 |
+
|
460 |
+
|
app/design/frontend/default/freepop/template/smartmenu/accordion_right.phtml
ADDED
@@ -0,0 +1,459 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Smart menu for store
|
4 |
+
*
|
5 |
+
* @see Mage_Catalog_Block_Navigation
|
6 |
+
*/
|
7 |
+
?>
|
8 |
+
<?php $deeplevel = Mage::getStoreConfig("smartmenu/smartmenu/deeplevel"); ?>
|
9 |
+
<?php $allows1 = Mage::getStoreConfig("smartmenu/smartmenu/rightmenu"); ?>
|
10 |
+
<?php if($allows1==1):?>
|
11 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/collapse')==true ):?>
|
12 |
+
|
13 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/toplevel')==true ):?>
|
14 |
+
|
15 |
+
<?php if (!Mage::registry('current_category')) return ?>
|
16 |
+
<?php $_categories=$this->getCurrentChildCategories() ?>
|
17 |
+
|
18 |
+
<div class="mv_smartmenu">
|
19 |
+
<div class="mv_smartmenu_head">
|
20 |
+
<h4>
|
21 |
+
<?php
|
22 |
+
$_main_categories=$this->getStoreCategories();
|
23 |
+
$i=0;
|
24 |
+
foreach ($_main_categories as $_main_category):
|
25 |
+
if($this->isCategoryActive($_main_category)):
|
26 |
+
echo $_main_category->getName();
|
27 |
+
endif;
|
28 |
+
endforeach;
|
29 |
+
?>
|
30 |
+
</h4>
|
31 |
+
</div>
|
32 |
+
<div class="mv_smartmenu_content">
|
33 |
+
<ul id="theMenu_acc">
|
34 |
+
<?php
|
35 |
+
$_main_categories=$this->getStoreCategories();
|
36 |
+
$i=0;
|
37 |
+
foreach ($_main_categories as $_main_category):
|
38 |
+
if($this->isCategoryActive($_main_category)):
|
39 |
+
?>
|
40 |
+
<?php
|
41 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
42 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
43 |
+
} else {
|
44 |
+
$_sub_categories = $_main_category->getChildren();
|
45 |
+
}
|
46 |
+
foreach ($_sub_categories as $_sub_category):
|
47 |
+
?>
|
48 |
+
<li class="<?php if ($this->isCategoryActive($_sub_category)): echo 'active'; endif; if($i==0): echo ' first'; endif;?>">
|
49 |
+
<a class="left main-cate" href="<?php echo $this->getCategoryUrl($_sub_category)?>">
|
50 |
+
<?php echo $_sub_category->getName()?>
|
51 |
+
</a>
|
52 |
+
<?php if(($_sub_category->hasChildren()) && ($deeplevel!=2)):?>
|
53 |
+
<span class="right head <?php if ($this->isCategoryActive($_sub_category)): echo 'selected'; endif; ?>">
|
54 |
+
<a href="javascript:;"></a>
|
55 |
+
</span>
|
56 |
+
<?php endif;?>
|
57 |
+
<?php if($_sub_category->hasChildren()):?>
|
58 |
+
<ul style="margin-left: 10px; clear:both;" >
|
59 |
+
<?php
|
60 |
+
$_sub3s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
61 |
+
if ($_sub3s):
|
62 |
+
$_sub3s = explode(',',$_sub3s);
|
63 |
+
foreach ($_sub3s as $_sub3id):
|
64 |
+
if($deeplevel==2): break; endif;
|
65 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
66 |
+
<li <?php if ($this->isCategoryActive($_sub3)): ?> class="active"<?php endif ?>>
|
67 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>">
|
68 |
+
<?php echo $_sub3->getName()?>
|
69 |
+
</a>
|
70 |
+
<?php if($_sub3->hasChildren()):?>
|
71 |
+
<ul style="margin-left: 10px; clear:both;" >
|
72 |
+
<?php
|
73 |
+
$_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
74 |
+
if ($_sub4s):
|
75 |
+
$_sub4s = explode(',',$_sub4s);
|
76 |
+
foreach ($_sub4s as $_sub4id):
|
77 |
+
if($deeplevel==3): break; endif;
|
78 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
79 |
+
<li <?php if ($this->isCategoryActive($_sub4)): ?> class="active"<?php endif ?>>
|
80 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
81 |
+
<?php echo $_sub4->getName()?>
|
82 |
+
</a>
|
83 |
+
<?php if($_sub4->hasChildren()):?>
|
84 |
+
<ul style="margin-left: 10px; clear:both;" >
|
85 |
+
<?php
|
86 |
+
$_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
87 |
+
if ($_sub5s):
|
88 |
+
$_sub5s = explode(',',$_sub5s);
|
89 |
+
foreach ($_sub5s as $_sub5id):
|
90 |
+
if($deeplevel==4): break; endif;
|
91 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
92 |
+
<li <?php if ($this->isCategoryActive($_sub5)): ?> class="active"<?php endif ?>>
|
93 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
94 |
+
<?php echo $_sub5->getName()?>
|
95 |
+
</a>
|
96 |
+
</li>
|
97 |
+
<?php endforeach;?>
|
98 |
+
<?php endif;?>
|
99 |
+
</ul>
|
100 |
+
<?php endif;?>
|
101 |
+
</li>
|
102 |
+
<?php endforeach;?>
|
103 |
+
<?php endif;?>
|
104 |
+
</ul>
|
105 |
+
<?php endif;?>
|
106 |
+
</li>
|
107 |
+
<?php endforeach;?>
|
108 |
+
<?php endif;?>
|
109 |
+
</ul>
|
110 |
+
<?php endif;?>
|
111 |
+
</li>
|
112 |
+
<?php endforeach;?>
|
113 |
+
|
114 |
+
<?php
|
115 |
+
$i++;
|
116 |
+
endif;
|
117 |
+
endforeach;
|
118 |
+
?>
|
119 |
+
</ul>
|
120 |
+
</div>
|
121 |
+
</div>
|
122 |
+
<div style="clear: both;"></div>
|
123 |
+
|
124 |
+
<?php else:?>
|
125 |
+
|
126 |
+
<div class="mv_smartmenu">
|
127 |
+
<div class="mv_smartmenu_head">
|
128 |
+
<h4><?php echo $this->__('Categories')?></h4>
|
129 |
+
</div>
|
130 |
+
<div class="mv_smartmenu_content">
|
131 |
+
<ul id="theMenu_acc">
|
132 |
+
<?php
|
133 |
+
$_main_categories=$this->getStoreCategories();
|
134 |
+
$i=0;
|
135 |
+
foreach ($_main_categories as $_main_category):
|
136 |
+
?>
|
137 |
+
<li class="<?php if ($this->isCategoryActive($_main_category)): echo 'active'; endif; if($i==0): echo ' first'; endif;?>">
|
138 |
+
<a class="left main-cate" href="<?php echo $this->getCategoryUrl($_main_category)?>">
|
139 |
+
<?php echo $_main_category->getName()?>
|
140 |
+
</a>
|
141 |
+
<?php if(($_main_category->hasChildren()) && ($deeplevel!=1)):?>
|
142 |
+
<span class="right head <?php if ($this->isCategoryActive($_main_category)): echo 'selected'; endif; ?>">
|
143 |
+
<a href="javascript:;"></a>
|
144 |
+
</span>
|
145 |
+
<?php endif;?>
|
146 |
+
|
147 |
+
<?php if($_main_category->hasChildren()):?>
|
148 |
+
<ul style="margin-left: 10px; clear:both;" >
|
149 |
+
<?php
|
150 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
151 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
152 |
+
} else {
|
153 |
+
$_sub_categories = $_main_category->getChildren();
|
154 |
+
}
|
155 |
+
foreach ($_sub_categories as $_sub_category):
|
156 |
+
if($deeplevel==1): break; endif;
|
157 |
+
?>
|
158 |
+
<li <?php if ($this->isCategoryActive($_sub_category)): ?> class="active"<?php endif ?>>
|
159 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>">
|
160 |
+
<?php echo $_sub_category->getName()?>
|
161 |
+
</a>
|
162 |
+
<?php if($_sub_category->hasChildren()):?>
|
163 |
+
<ul style="margin-left: 10px; clear:both;" >
|
164 |
+
<?php
|
165 |
+
$_sub3s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
166 |
+
if ($_sub3s):
|
167 |
+
$_sub3s = explode(',',$_sub3s);
|
168 |
+
foreach ($_sub3s as $_sub3id):
|
169 |
+
if($deeplevel==2): break; endif;
|
170 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
171 |
+
<li <?php if ($this->isCategoryActive($_sub3)): ?> class="active"<?php endif ?>>
|
172 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>">
|
173 |
+
<?php echo $_sub3->getName()?>
|
174 |
+
</a>
|
175 |
+
<?php if($_sub3->hasChildren()):?>
|
176 |
+
<ul style="margin-left: 10px; clear:both;" >
|
177 |
+
<?php
|
178 |
+
$_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
179 |
+
if ($_sub4s):
|
180 |
+
$_sub4s = explode(',',$_sub4s);
|
181 |
+
|
182 |
+
foreach ($_sub4s as $_sub4id):
|
183 |
+
if($deeplevel==3): break; endif;
|
184 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
185 |
+
<li <?php if ($this->isCategoryActive($_sub4)): ?> class="active"<?php endif ?>>
|
186 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
187 |
+
<?php echo $_sub4->getName()?>
|
188 |
+
</a>
|
189 |
+
<?php if($_sub4->hasChildren()):?>
|
190 |
+
<ul style="margin-left: 10px; clear:both;" >
|
191 |
+
<?php
|
192 |
+
$_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
193 |
+
if ($_sub5s):
|
194 |
+
$_sub5s = explode(',',$_sub5s);
|
195 |
+
|
196 |
+
foreach ($_sub5s as $_sub5id):
|
197 |
+
if($deeplevel==4): break; endif;
|
198 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
199 |
+
|
200 |
+
<li <?php if ($this->isCategoryActive($_sub5)): ?> class="active"<?php endif ?>>
|
201 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
202 |
+
<?php echo $_sub5->getName()?>
|
203 |
+
</a>
|
204 |
+
</li>
|
205 |
+
<?php endforeach;?>
|
206 |
+
<?php endif;?>
|
207 |
+
</ul>
|
208 |
+
<?php endif;?>
|
209 |
+
</li>
|
210 |
+
<?php endforeach;?>
|
211 |
+
<?php endif;?>
|
212 |
+
</ul>
|
213 |
+
<?php endif;?>
|
214 |
+
</li>
|
215 |
+
<?php endforeach;?>
|
216 |
+
<?php endif;?>
|
217 |
+
</ul>
|
218 |
+
<?php endif;?>
|
219 |
+
</li>
|
220 |
+
<?php endforeach;?>
|
221 |
+
</ul>
|
222 |
+
<?php endif;?>
|
223 |
+
</li>
|
224 |
+
<?php
|
225 |
+
$i++;
|
226 |
+
endforeach;
|
227 |
+
?>
|
228 |
+
|
229 |
+
</ul>
|
230 |
+
</div>
|
231 |
+
</div>
|
232 |
+
<div style="clear: both;"></div>
|
233 |
+
<?php endif;?>
|
234 |
+
|
235 |
+
<?php else:?>
|
236 |
+
|
237 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/toplevel')==true ):?>
|
238 |
+
|
239 |
+
<?php if (!Mage::registry('current_category')) return ?>
|
240 |
+
<?php $_categories=$this->getCurrentChildCategories() ?>
|
241 |
+
|
242 |
+
<div class="mv_smartmenu">
|
243 |
+
<div class="mv_smartmenu_head">
|
244 |
+
<h4>
|
245 |
+
<?php
|
246 |
+
$_main_categories=$this->getStoreCategories();
|
247 |
+
$i=0;
|
248 |
+
foreach ($_main_categories as $_main_category):
|
249 |
+
if($this->isCategoryActive($_main_category)):
|
250 |
+
echo $_main_category->getName();
|
251 |
+
endif;
|
252 |
+
endforeach;
|
253 |
+
?>
|
254 |
+
</h4>
|
255 |
+
</div>
|
256 |
+
<div class="mv_smartmenu_content">
|
257 |
+
<ul id="cate_collap">
|
258 |
+
<?php
|
259 |
+
$_main_categories=$this->getStoreCategories();
|
260 |
+
$i=0;
|
261 |
+
foreach ($_main_categories as $_main_category):
|
262 |
+
if($this->isCategoryActive($_main_category)):
|
263 |
+
?>
|
264 |
+
<?php if ($_main_category->getIsActive()) {?>
|
265 |
+
<?php
|
266 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
267 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
268 |
+
} else {
|
269 |
+
$_sub_categories = $_main_category->getChildren();
|
270 |
+
}
|
271 |
+
foreach ($_sub_categories as $_sub_category):
|
272 |
+
?>
|
273 |
+
<li class="<?php if ($this->isCategoryActive($_sub_category)): echo'active'; endif; if($i==0): echo ' first'; endif;?>" style="clear: both; float: left; width:100%;">
|
274 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>">
|
275 |
+
<?php echo $_sub_category->getName()?>
|
276 |
+
</a>
|
277 |
+
<?php if(($_sub_category->hasChildren()) && ($deeplevel!=2)): ?>
|
278 |
+
<a class="title_collap" href="#" onclick="return false;"><span class="right head"> </span> </a>
|
279 |
+
<?php endif;?>
|
280 |
+
<ul style="margin-left: 10px; clear:both;" >
|
281 |
+
<?php
|
282 |
+
$_sub3s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
283 |
+
if ($_sub3s):
|
284 |
+
$_sub3s = explode(',',$_sub3s);
|
285 |
+
foreach ($_sub3s as $_sub3id):
|
286 |
+
if($deeplevel==2): break; endif;
|
287 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
288 |
+
<li <?php if ($this->isCategoryActive($_sub3)): ?> class="active"<?php endif ?>>
|
289 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>">
|
290 |
+
<?php echo $_sub3->getName()?>
|
291 |
+
</a>
|
292 |
+
<ul style="margin-left: 10px; clear:both;" >
|
293 |
+
<?php
|
294 |
+
$_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
295 |
+
if ($_sub4s):
|
296 |
+
$_sub4s = explode(',',$_sub4s);
|
297 |
+
foreach ($_sub4s as $_sub4id):
|
298 |
+
if($deeplevel==3): break; endif;
|
299 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
300 |
+
<li <?php if ($this->isCategoryActive($_sub4)): ?> class="active"<?php endif ?>>
|
301 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
302 |
+
<?php echo $_sub4->getName()?>
|
303 |
+
</a>
|
304 |
+
<ul style="margin-left: 10px; clear:both;" >
|
305 |
+
<?php
|
306 |
+
$_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
307 |
+
if ($_sub5s):
|
308 |
+
$_sub5s = explode(',',$_sub5s);
|
309 |
+
foreach ($_sub5s as $_sub5id):
|
310 |
+
if($deeplevel==4): break; endif;
|
311 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
312 |
+
<li <?php if ($this->isCategoryActive($_sub5)): ?> class="active"<?php endif ?>>
|
313 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
314 |
+
<?php echo $_sub5->getName()?>
|
315 |
+
</a>
|
316 |
+
</li>
|
317 |
+
<?php endforeach;?>
|
318 |
+
<?php endif;?>
|
319 |
+
</ul>
|
320 |
+
</li>
|
321 |
+
<?php endforeach;?>
|
322 |
+
<?php endif;?>
|
323 |
+
</ul>
|
324 |
+
</li>
|
325 |
+
<?php endforeach;?>
|
326 |
+
<?php endif;?>
|
327 |
+
</ul>
|
328 |
+
</li>
|
329 |
+
<?php endforeach;?>
|
330 |
+
<?php }?>
|
331 |
+
</li>
|
332 |
+
<?php
|
333 |
+
$i++;
|
334 |
+
endif;
|
335 |
+
endforeach;
|
336 |
+
?>
|
337 |
+
</ul>
|
338 |
+
</div>
|
339 |
+
</div>
|
340 |
+
<div style="clear: both;"></div>
|
341 |
+
|
342 |
+
<?php else:?>
|
343 |
+
|
344 |
+
<div class="mv_smartmenu">
|
345 |
+
<div class="mw_smartmenu_head">
|
346 |
+
<h4><?php echo $this->__('Categories')?> </h4>
|
347 |
+
</div>
|
348 |
+
<ul id="cate_collap">
|
349 |
+
|
350 |
+
<?php
|
351 |
+
$_main_categories=$this->getStoreCategories();
|
352 |
+
$i=0;
|
353 |
+
foreach ($_main_categories as $_main_category):
|
354 |
+
?>
|
355 |
+
<li class="<?php if ($this->isCategoryActive($_main_category)):echo 'active'; endif; if($i==0): echo ' first'; endif;?>" style="clear: both; float: left; width:100%;">
|
356 |
+
<a class="left main_cate " href="<?php echo $this->getCategoryUrl($_main_category)?>"><?php echo $_main_category->getName()?></a>
|
357 |
+
<?php if(($_main_category->hasChildren()) && ($deeplevel!=1)): ?>
|
358 |
+
<a class="title_collap" href="#" onclick="return false;"><span class="right head"> </span> </a>
|
359 |
+
<?php endif;?>
|
360 |
+
|
361 |
+
<?php if ($_main_category->getIsActive()) {
|
362 |
+
?>
|
363 |
+
|
364 |
+
|
365 |
+
<ul style="margin-left: 10px; clear: both;" class="ul_level1" >
|
366 |
+
|
367 |
+
<?php
|
368 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
369 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
370 |
+
} else {
|
371 |
+
$_sub_categories = $_main_category->getChildren();
|
372 |
+
}
|
373 |
+
|
374 |
+
foreach ($_sub_categories as $_sub_category):
|
375 |
+
if($deeplevel==1): break; endif;
|
376 |
+
?>
|
377 |
+
<li <?php if ($this->isCategoryActive($_sub_category)): ?> class="active"<?php endif ?>>
|
378 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>">
|
379 |
+
<?php echo $_sub_category->getName()?>
|
380 |
+
</a>
|
381 |
+
<ul style="margin-left: 10px; clear:both;" >
|
382 |
+
<?php
|
383 |
+
$_sub3s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
384 |
+
if ($_sub3s):
|
385 |
+
$_sub3s = explode(',',$_sub3s);
|
386 |
+
|
387 |
+
foreach ($_sub3s as $_sub3id):
|
388 |
+
if($deeplevel==2): break; endif;
|
389 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
390 |
+
<li <?php if ($this->isCategoryActive($_sub3)): ?> class="active"<?php endif ?>>
|
391 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>">
|
392 |
+
<?php echo $_sub3->getName()?>
|
393 |
+
</a>
|
394 |
+
<ul style="margin-left: 10px; clear:both;" >
|
395 |
+
<?php
|
396 |
+
$_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
397 |
+
if ($_sub4s):
|
398 |
+
$_sub4s = explode(',',$_sub4s);
|
399 |
+
|
400 |
+
foreach ($_sub4s as $_sub4id):
|
401 |
+
if($deeplevel==3): break; endif;
|
402 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
403 |
+
<li <?php if ($this->isCategoryActive($_sub4)): ?> class="active"<?php endif ?>>
|
404 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
405 |
+
<?php echo $_sub4->getName()?>
|
406 |
+
</a>
|
407 |
+
<ul style="margin-left: 10px; clear:both;" >
|
408 |
+
<?php
|
409 |
+
$_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
410 |
+
if ($_sub5s):
|
411 |
+
$_sub5s = explode(',',$_sub5s);
|
412 |
+
|
413 |
+
foreach ($_sub5s as $_sub5id):
|
414 |
+
if($deeplevel==4): break; endif;
|
415 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
416 |
+
|
417 |
+
<li <?php if ($this->isCategoryActive($_sub5)): ?> class="active"<?php endif ?>>
|
418 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
419 |
+
<?php echo $_sub5->getName()?>
|
420 |
+
</a>
|
421 |
+
</li>
|
422 |
+
<?php endforeach;?>
|
423 |
+
<?php endif;?>
|
424 |
+
</ul>
|
425 |
+
</li>
|
426 |
+
<?php endforeach;?>
|
427 |
+
<?php endif;?>
|
428 |
+
</ul>
|
429 |
+
</li>
|
430 |
+
<?php endforeach;?>
|
431 |
+
<?php endif;?>
|
432 |
+
</ul>
|
433 |
+
</li>
|
434 |
+
<?php endforeach;?>
|
435 |
+
</ul>
|
436 |
+
|
437 |
+
<?php
|
438 |
+
}
|
439 |
+
?>
|
440 |
+
</li>
|
441 |
+
<?php
|
442 |
+
$i++;
|
443 |
+
endforeach;
|
444 |
+
?>
|
445 |
+
|
446 |
+
|
447 |
+
|
448 |
+
</ul>
|
449 |
+
</div>
|
450 |
+
<div style="clear: both;"></div>
|
451 |
+
<?php endif;?>
|
452 |
+
|
453 |
+
<?php endif;?>
|
454 |
+
<?php endif;?>
|
455 |
+
|
456 |
+
|
457 |
+
|
458 |
+
|
459 |
+
|
app/design/frontend/default/freepop/template/smartmenu/dropdown_left.phtml
ADDED
@@ -0,0 +1,261 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Smart menu for store
|
4 |
+
*
|
5 |
+
* @see Mage_Catalog_Block_Navigation
|
6 |
+
*/
|
7 |
+
?>
|
8 |
+
<?php $deeplevel = Mage::getStoreConfig("smartmenu/smartmenu/deeplevel"); ?>
|
9 |
+
<?php $allows1 = Mage::getStoreConfig("smartmenu/smartmenu/leftmenu"); ?>
|
10 |
+
<?php $allows1 = Mage::getStoreConfig("smartmenu/smartmenu/leftmenu"); ?>
|
11 |
+
<?php if($allows1==2):?>
|
12 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/toplevel')==true ):?>
|
13 |
+
|
14 |
+
<div class="mw_menu">
|
15 |
+
<div class="mw_menu_head">
|
16 |
+
<h4 class="title">
|
17 |
+
<?php
|
18 |
+
$_main_categories=$this->getStoreCategories();
|
19 |
+
$i=0;
|
20 |
+
foreach ($_main_categories as $_main_category):
|
21 |
+
if($this->isCategoryActive($_main_category)):
|
22 |
+
echo $_main_category->getName();
|
23 |
+
endif;
|
24 |
+
endforeach;
|
25 |
+
?>
|
26 |
+
</h4>
|
27 |
+
</div>
|
28 |
+
<ul class="sf-menu sf-vertical sf-js-enabled sf-shadow">
|
29 |
+
<?php
|
30 |
+
$_main_categories=$this->getStoreCategories();
|
31 |
+
foreach ($_main_categories as $_main_category):
|
32 |
+
if($this->isCategoryActive($_main_category)) {
|
33 |
+
?>
|
34 |
+
|
35 |
+
<?php
|
36 |
+
|
37 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
38 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
39 |
+
} else {
|
40 |
+
$_sub_categories = $_main_category->getChildren();
|
41 |
+
}
|
42 |
+
if($_main_category->hasChildren()):
|
43 |
+
?>
|
44 |
+
|
45 |
+
<?php foreach ($_sub_categories as $_sub_category):
|
46 |
+
if($deeplevel==1): break; endif;
|
47 |
+
if ($_sub_category->getIsActive()) {?>
|
48 |
+
<li <?php if($deeplevel==2): echo 'class="display_li"'; endif;?>>
|
49 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>"><?php echo $_sub_category->getName()?></a>
|
50 |
+
<?php
|
51 |
+
$_sub2s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
52 |
+
if ($_sub2s):
|
53 |
+
$_sub2s = explode(',',$_sub2s);
|
54 |
+
?>
|
55 |
+
|
56 |
+
<ul <?php if($deeplevel==2): echo 'class="display"'; endif;?>>
|
57 |
+
<?php foreach ($_sub2s as $_sub2id):
|
58 |
+
if($deeplevel==2): break; endif;
|
59 |
+
$_sub2 = Mage::getModel('catalog/category')->load($_sub2id);?>
|
60 |
+
<li <?php if($deeplevel==3): echo 'class="display_li"'; endif;?>>
|
61 |
+
<a href="<?php echo $this->getCategoryUrl($_sub2)?>"><?php echo $_sub2->getName()?></a>
|
62 |
+
|
63 |
+
<?php $_sub3s = Mage::getModel('catalog/category')->load($_sub2->getId())->getChildren();
|
64 |
+
if ($_sub3s):
|
65 |
+
$_sub3s = explode(',',$_sub3s);
|
66 |
+
?>
|
67 |
+
<ul <?php if($deeplevel==3): echo 'class="display"'; endif;?>>
|
68 |
+
<?php foreach ($_sub3s as $_sub3id):
|
69 |
+
if($deeplevel==3): break; endif;
|
70 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
71 |
+
<li <?php if($deeplevel==4): echo 'class="display_li"'; endif;?>>
|
72 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>"><?php echo $_sub3->getName()?></a>
|
73 |
+
|
74 |
+
<?php $_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
75 |
+
if ($_sub4s):
|
76 |
+
$_sub4s = explode(',',$_sub4s);
|
77 |
+
?>
|
78 |
+
<ul <?php if($deeplevel==4): echo 'class="display"'; endif;?>>
|
79 |
+
<?php foreach ($_sub4s as $_sub4id):
|
80 |
+
if($deeplevel==4): break; endif;
|
81 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
82 |
+
<li <?php if($deeplevel==5): echo 'class="display_li"'; endif;?>>
|
83 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
84 |
+
<?php echo $_sub4->getName()?>
|
85 |
+
</a>
|
86 |
+
|
87 |
+
<?php $_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
88 |
+
if ($_sub5s):
|
89 |
+
$_sub5s = explode(',',$_sub5s);
|
90 |
+
?>
|
91 |
+
<ul <?php if($deeplevel==5): echo 'class="display"'; endif;?>>
|
92 |
+
<?php foreach ($_sub5s as $_sub5id):
|
93 |
+
if($deeplevel==4): break; endif;
|
94 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
95 |
+
<li>
|
96 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
97 |
+
<?php echo $_sub5->getName()?>
|
98 |
+
</a>
|
99 |
+
</li>
|
100 |
+
|
101 |
+
<?php
|
102 |
+
endforeach;?>
|
103 |
+
</ul>
|
104 |
+
<?php endif; ?>
|
105 |
+
|
106 |
+
</li>
|
107 |
+
|
108 |
+
<?php
|
109 |
+
endforeach;?>
|
110 |
+
</ul>
|
111 |
+
<?php endif; ?>
|
112 |
+
|
113 |
+
</li>
|
114 |
+
|
115 |
+
<?php
|
116 |
+
endforeach;?>
|
117 |
+
</ul>
|
118 |
+
<?php endif; ?>
|
119 |
+
|
120 |
+
</li>
|
121 |
+
|
122 |
+
<?php
|
123 |
+
endforeach;?>
|
124 |
+
</ul>
|
125 |
+
<?php endif; ?>
|
126 |
+
</li>
|
127 |
+
<?php
|
128 |
+
|
129 |
+
}
|
130 |
+
endforeach;?>
|
131 |
+
|
132 |
+
<?php endif; ?>
|
133 |
+
|
134 |
+
<?php
|
135 |
+
}
|
136 |
+
endforeach;?>
|
137 |
+
</ul>
|
138 |
+
</div>
|
139 |
+
<div style="clear:both;"></div>
|
140 |
+
|
141 |
+
<?php else:?>
|
142 |
+
<div class="mw_menu">
|
143 |
+
<div class="mw_menu_head">
|
144 |
+
<h4 class="title"><?php echo $this->__('Categories');?></h4>
|
145 |
+
</div>
|
146 |
+
<ul class="sf-menu sf-vertical sf-js-enabled sf-shadow">
|
147 |
+
<?php
|
148 |
+
$_main_categories=$this->getStoreCategories();
|
149 |
+
foreach ($_main_categories as $_main_category):
|
150 |
+
if ($_main_category->getIsActive()) {
|
151 |
+
?>
|
152 |
+
<li <?php if($deeplevel==1): echo 'class="display_li"'; endif;?>>
|
153 |
+
<a href="<?php echo $this->getCategoryUrl($_main_category)?>"><?php echo $_main_category->getName()?></a>
|
154 |
+
<?php
|
155 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
156 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
157 |
+
} else {
|
158 |
+
$_sub_categories = $_main_category->getChildren();
|
159 |
+
}
|
160 |
+
if($_main_category->hasChildren()):
|
161 |
+
?>
|
162 |
+
|
163 |
+
<ul <?php if($deeplevel==1): echo 'class="display"'; endif;?>>
|
164 |
+
<?php foreach ($_sub_categories as $_sub_category):
|
165 |
+
if($deeplevel==1): break; endif;
|
166 |
+
if ($_sub_category->getIsActive()) {?>
|
167 |
+
<li <?php if($deeplevel==2): echo 'class="display_li"'; endif;?>>
|
168 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>"><?php echo $_sub_category->getName()?></a>
|
169 |
+
<?php
|
170 |
+
$_sub2s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
171 |
+
if ($_sub2s):
|
172 |
+
$_sub2s = explode(',',$_sub2s);
|
173 |
+
?>
|
174 |
+
|
175 |
+
<ul <?php if($deeplevel==2): echo 'class="display"'; endif;?>>
|
176 |
+
<?php foreach ($_sub2s as $_sub2id):
|
177 |
+
if($deeplevel==2): break; endif;
|
178 |
+
$_sub2 = Mage::getModel('catalog/category')->load($_sub2id);?>
|
179 |
+
<li <?php if($deeplevel==3): echo 'class="display_li"'; endif;?>>
|
180 |
+
<a href="<?php echo $this->getCategoryUrl($_sub2)?>"><?php echo $_sub2->getName()?></a>
|
181 |
+
|
182 |
+
<?php $_sub3s = Mage::getModel('catalog/category')->load($_sub2->getId())->getChildren();
|
183 |
+
if ($_sub3s):
|
184 |
+
$_sub3s = explode(',',$_sub3s);
|
185 |
+
?>
|
186 |
+
<ul <?php if($deeplevel==3): echo 'class="display"'; endif;?>>
|
187 |
+
<?php foreach ($_sub3s as $_sub3id):
|
188 |
+
if($deeplevel==3): break; endif;
|
189 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
190 |
+
<li <?php if($deeplevel==4): echo 'class="display_li"'; endif;?>>
|
191 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>"><?php echo $_sub3->getName()?></a>
|
192 |
+
|
193 |
+
<?php $_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
194 |
+
if ($_sub4s):
|
195 |
+
$_sub4s = explode(',',$_sub4s);
|
196 |
+
?>
|
197 |
+
<ul <?php if($deeplevel==4): echo 'class="display"'; endif;?>>
|
198 |
+
<?php foreach ($_sub4s as $_sub4id):
|
199 |
+
if($deeplevel==4): break; endif;
|
200 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
201 |
+
<li <?php if($deeplevel==5): echo 'class="display_li"'; endif;?>>
|
202 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
203 |
+
<?php echo $_sub4->getName()?>
|
204 |
+
</a>
|
205 |
+
|
206 |
+
<?php $_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
207 |
+
if ($_sub5s):
|
208 |
+
$_sub5s = explode(',',$_sub5s);
|
209 |
+
?>
|
210 |
+
<ul <?php if($deeplevel==5): echo 'class="display"'; endif;?>>
|
211 |
+
<?php foreach ($_sub5s as $_sub5id):
|
212 |
+
if($deeplevel==4): break; endif;
|
213 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
214 |
+
<li>
|
215 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
216 |
+
<?php echo $_sub5->getName()?>
|
217 |
+
</a>
|
218 |
+
</li>
|
219 |
+
|
220 |
+
<?php
|
221 |
+
endforeach;?>
|
222 |
+
</ul>
|
223 |
+
<?php endif; ?>
|
224 |
+
|
225 |
+
</li>
|
226 |
+
|
227 |
+
<?php
|
228 |
+
endforeach;?>
|
229 |
+
</ul>
|
230 |
+
<?php endif; ?>
|
231 |
+
|
232 |
+
</li>
|
233 |
+
|
234 |
+
<?php
|
235 |
+
endforeach;?>
|
236 |
+
</ul>
|
237 |
+
<?php endif; ?>
|
238 |
+
|
239 |
+
</li>
|
240 |
+
|
241 |
+
<?php
|
242 |
+
endforeach;?>
|
243 |
+
</ul>
|
244 |
+
<?php endif; ?>
|
245 |
+
</li>
|
246 |
+
<?php
|
247 |
+
|
248 |
+
}
|
249 |
+
endforeach;?>
|
250 |
+
</ul>
|
251 |
+
<?php endif; ?>
|
252 |
+
</li>
|
253 |
+
<?php
|
254 |
+
}
|
255 |
+
endforeach;?>
|
256 |
+
|
257 |
+
</ul>
|
258 |
+
<div style="clear:both;"></div>
|
259 |
+
</div>
|
260 |
+
<?php endif;?>
|
261 |
+
<?php endif;?>
|
app/design/frontend/default/freepop/template/smartmenu/dropdown_right.phtml
ADDED
@@ -0,0 +1,262 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Smart menu for store
|
4 |
+
*
|
5 |
+
* @see Mage_Catalog_Block_Navigation
|
6 |
+
*/
|
7 |
+
?>
|
8 |
+
<?php $deeplevel = Mage::getStoreConfig("smartmenu/smartmenu/deeplevel"); ?>
|
9 |
+
<?php $allows1 = Mage::getStoreConfig("smartmenu/smartmenu/rightmenu"); ?>
|
10 |
+
<?php $allows1 = Mage::getStoreConfig("smartmenu/smartmenu/rightmenu"); ?>
|
11 |
+
<?php if($allows1==2):?>
|
12 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/toplevel')==true ):?>
|
13 |
+
|
14 |
+
<div class="mw_menu">
|
15 |
+
<div class="mw_menu_head">
|
16 |
+
<h4 class="title">
|
17 |
+
<?php
|
18 |
+
$_main_categories=$this->getStoreCategories();
|
19 |
+
$i=0;
|
20 |
+
foreach ($_main_categories as $_main_category):
|
21 |
+
if($this->isCategoryActive($_main_category)):
|
22 |
+
echo $_main_category->getName();
|
23 |
+
endif;
|
24 |
+
endforeach;
|
25 |
+
?>
|
26 |
+
</h4>
|
27 |
+
</div>
|
28 |
+
<ul class="sf-menu sf-vertical sf-js-enabled sf-shadow">
|
29 |
+
<?php
|
30 |
+
$_main_categories=$this->getStoreCategories();
|
31 |
+
foreach ($_main_categories as $_main_category):
|
32 |
+
if($this->isCategoryActive($_main_category)) {
|
33 |
+
?>
|
34 |
+
|
35 |
+
<?php
|
36 |
+
|
37 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
38 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
39 |
+
} else {
|
40 |
+
$_sub_categories = $_main_category->getChildren();
|
41 |
+
}
|
42 |
+
if($_main_category->hasChildren()):
|
43 |
+
?>
|
44 |
+
|
45 |
+
<?php foreach ($_sub_categories as $_sub_category):
|
46 |
+
if($deeplevel==1): break; endif;
|
47 |
+
if ($_sub_category->getIsActive()) {?>
|
48 |
+
<li <?php if($deeplevel==2): echo 'class="display_li"'; endif;?>>
|
49 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>"><?php echo $_sub_category->getName()?></a>
|
50 |
+
<?php
|
51 |
+
$_sub2s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
52 |
+
if ($_sub2s):
|
53 |
+
$_sub2s = explode(',',$_sub2s);
|
54 |
+
?>
|
55 |
+
|
56 |
+
<ul <?php if($deeplevel==2): echo 'class="display"'; endif;?>>
|
57 |
+
<?php foreach ($_sub2s as $_sub2id):
|
58 |
+
if($deeplevel==2): break; endif;
|
59 |
+
$_sub2 = Mage::getModel('catalog/category')->load($_sub2id);?>
|
60 |
+
<li <?php if($deeplevel==3): echo 'class="display_li"'; endif;?>>
|
61 |
+
<a href="<?php echo $this->getCategoryUrl($_sub2)?>"><?php echo $_sub2->getName()?></a>
|
62 |
+
|
63 |
+
<?php $_sub3s = Mage::getModel('catalog/category')->load($_sub2->getId())->getChildren();
|
64 |
+
if ($_sub3s):
|
65 |
+
$_sub3s = explode(',',$_sub3s);
|
66 |
+
?>
|
67 |
+
<ul <?php if($deeplevel==3): echo 'class="display"'; endif;?>>
|
68 |
+
<?php foreach ($_sub3s as $_sub3id):
|
69 |
+
if($deeplevel==3): break; endif;
|
70 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
71 |
+
<li <?php if($deeplevel==4): echo 'class="display_li"'; endif;?>>
|
72 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>"><?php echo $_sub3->getName()?></a>
|
73 |
+
|
74 |
+
<?php $_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
75 |
+
if ($_sub4s):
|
76 |
+
$_sub4s = explode(',',$_sub4s);
|
77 |
+
?>
|
78 |
+
<ul <?php if($deeplevel==4): echo 'class="display"'; endif;?>>
|
79 |
+
<?php foreach ($_sub4s as $_sub4id):
|
80 |
+
if($deeplevel==4): break; endif;
|
81 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
82 |
+
<li <?php if($deeplevel==5): echo 'class="display_li"'; endif;?>>
|
83 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
84 |
+
<?php echo $_sub4->getName()?>
|
85 |
+
</a>
|
86 |
+
|
87 |
+
<?php $_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
88 |
+
if ($_sub5s):
|
89 |
+
$_sub5s = explode(',',$_sub5s);
|
90 |
+
?>
|
91 |
+
<ul <?php if($deeplevel==5): echo 'class="display"'; endif;?>>
|
92 |
+
<?php foreach ($_sub5s as $_sub5id):
|
93 |
+
if($deeplevel==4): break; endif;
|
94 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
95 |
+
<li>
|
96 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
97 |
+
<?php echo $_sub5->getName()?>
|
98 |
+
</a>
|
99 |
+
</li>
|
100 |
+
|
101 |
+
<?php
|
102 |
+
endforeach;?>
|
103 |
+
</ul>
|
104 |
+
<?php endif; ?>
|
105 |
+
|
106 |
+
</li>
|
107 |
+
|
108 |
+
<?php
|
109 |
+
endforeach;?>
|
110 |
+
</ul>
|
111 |
+
<?php endif; ?>
|
112 |
+
|
113 |
+
</li>
|
114 |
+
|
115 |
+
<?php
|
116 |
+
endforeach;?>
|
117 |
+
</ul>
|
118 |
+
<?php endif; ?>
|
119 |
+
|
120 |
+
</li>
|
121 |
+
|
122 |
+
<?php
|
123 |
+
endforeach;?>
|
124 |
+
</ul>
|
125 |
+
<?php endif; ?>
|
126 |
+
</li>
|
127 |
+
<?php
|
128 |
+
|
129 |
+
}
|
130 |
+
endforeach;?>
|
131 |
+
|
132 |
+
<?php endif; ?>
|
133 |
+
|
134 |
+
<?php
|
135 |
+
}
|
136 |
+
endforeach;?>
|
137 |
+
</ul>
|
138 |
+
</div>
|
139 |
+
<div style="clear:both;"></div>
|
140 |
+
|
141 |
+
<?php else:?>
|
142 |
+
<div class="mw_menu">
|
143 |
+
<div class="mw_menu_head">
|
144 |
+
<h4 class="title"><?php echo $this->__('Categories');?></h4>
|
145 |
+
</div>
|
146 |
+
<ul class="sf-menu sf-vertical sf-js-enabled sf-shadow">
|
147 |
+
<?php
|
148 |
+
$_main_categories=$this->getStoreCategories();
|
149 |
+
foreach ($_main_categories as $_main_category):
|
150 |
+
if ($_main_category->getIsActive()) {
|
151 |
+
?>
|
152 |
+
<li <?php if($deeplevel==1): echo 'class="display_li"'; endif;?>>
|
153 |
+
<a href="<?php echo $this->getCategoryUrl($_main_category)?>"><?php echo $_main_category->getName()?></a>
|
154 |
+
<?php
|
155 |
+
if (Mage::helper('catalog/category_flat')->isEnabled()) {
|
156 |
+
$_sub_categories = $_main_category->getChildrenNodes();
|
157 |
+
} else {
|
158 |
+
$_sub_categories = $_main_category->getChildren();
|
159 |
+
}
|
160 |
+
|
161 |
+
if($_main_category->hasChildren()):
|
162 |
+
?>
|
163 |
+
|
164 |
+
<ul <?php if($deeplevel==1): echo 'class="display"'; endif;?>>
|
165 |
+
<?php foreach ($_sub_categories as $_sub_category):
|
166 |
+
if($deeplevel==1): break; endif;
|
167 |
+
if ($_sub_category->getIsActive()) {?>
|
168 |
+
<li <?php if($deeplevel==2): echo 'class="display_li"'; endif;?>>
|
169 |
+
<a href="<?php echo $this->getCategoryUrl($_sub_category)?>"><?php echo $_sub_category->getName()?></a>
|
170 |
+
<?php
|
171 |
+
$_sub2s = Mage::getModel('catalog/category')->load($_sub_category->getId())->getChildren();
|
172 |
+
if ($_sub2s):
|
173 |
+
$_sub2s = explode(',',$_sub2s);
|
174 |
+
?>
|
175 |
+
|
176 |
+
<ul <?php if($deeplevel==2): echo 'class="display"'; endif;?>>
|
177 |
+
<?php foreach ($_sub2s as $_sub2id):
|
178 |
+
if($deeplevel==2): break; endif;
|
179 |
+
$_sub2 = Mage::getModel('catalog/category')->load($_sub2id);?>
|
180 |
+
<li <?php if($deeplevel==3): echo 'class="display_li"'; endif;?>>
|
181 |
+
<a href="<?php echo $this->getCategoryUrl($_sub2)?>"><?php echo $_sub2->getName()?></a>
|
182 |
+
|
183 |
+
<?php $_sub3s = Mage::getModel('catalog/category')->load($_sub2->getId())->getChildren();
|
184 |
+
if ($_sub3s):
|
185 |
+
$_sub3s = explode(',',$_sub3s);
|
186 |
+
?>
|
187 |
+
<ul <?php if($deeplevel==3): echo 'class="display"'; endif;?>>
|
188 |
+
<?php foreach ($_sub3s as $_sub3id):
|
189 |
+
if($deeplevel==3): break; endif;
|
190 |
+
$_sub3 = Mage::getModel('catalog/category')->load($_sub3id);?>
|
191 |
+
<li <?php if($deeplevel==4): echo 'class="display_li"'; endif;?>>
|
192 |
+
<a href="<?php echo $this->getCategoryUrl($_sub3)?>"><?php echo $_sub3->getName()?></a>
|
193 |
+
|
194 |
+
<?php $_sub4s = Mage::getModel('catalog/category')->load($_sub3->getId())->getChildren();
|
195 |
+
if ($_sub4s):
|
196 |
+
$_sub4s = explode(',',$_sub4s);
|
197 |
+
?>
|
198 |
+
<ul <?php if($deeplevel==4): echo 'class="display"'; endif;?>>
|
199 |
+
<?php foreach ($_sub4s as $_sub4id):
|
200 |
+
if($deeplevel==4): break; endif;
|
201 |
+
$_sub4 = Mage::getModel('catalog/category')->load($_sub4id);?>
|
202 |
+
<li <?php if($deeplevel==5): echo 'class="display_li"'; endif;?>>
|
203 |
+
<a href="<?php echo $this->getCategoryUrl($_sub4)?>">
|
204 |
+
<?php echo $_sub4->getName()?>
|
205 |
+
</a>
|
206 |
+
|
207 |
+
<?php $_sub5s = Mage::getModel('catalog/category')->load($_sub4->getId())->getChildren();
|
208 |
+
if ($_sub5s):
|
209 |
+
$_sub5s = explode(',',$_sub5s);
|
210 |
+
?>
|
211 |
+
<ul <?php if($deeplevel==5): echo 'class="display"'; endif;?>>
|
212 |
+
<?php foreach ($_sub5s as $_sub5id):
|
213 |
+
if($deeplevel==4): break; endif;
|
214 |
+
$_sub5 = Mage::getModel('catalog/category')->load($_sub5id);?>
|
215 |
+
<li>
|
216 |
+
<a href="<?php echo $this->getCategoryUrl($_sub5)?>">
|
217 |
+
<?php echo $_sub5->getName()?>
|
218 |
+
</a>
|
219 |
+
</li>
|
220 |
+
|
221 |
+
<?php
|
222 |
+
endforeach;?>
|
223 |
+
</ul>
|
224 |
+
<?php endif; ?>
|
225 |
+
|
226 |
+
</li>
|
227 |
+
|
228 |
+
<?php
|
229 |
+
endforeach;?>
|
230 |
+
</ul>
|
231 |
+
<?php endif; ?>
|
232 |
+
|
233 |
+
</li>
|
234 |
+
|
235 |
+
<?php
|
236 |
+
endforeach;?>
|
237 |
+
</ul>
|
238 |
+
<?php endif; ?>
|
239 |
+
|
240 |
+
</li>
|
241 |
+
|
242 |
+
<?php
|
243 |
+
endforeach;?>
|
244 |
+
</ul>
|
245 |
+
<?php endif; ?>
|
246 |
+
</li>
|
247 |
+
<?php
|
248 |
+
|
249 |
+
}
|
250 |
+
endforeach;?>
|
251 |
+
</ul>
|
252 |
+
<?php endif; ?>
|
253 |
+
</li>
|
254 |
+
<?php
|
255 |
+
}
|
256 |
+
endforeach;?>
|
257 |
+
|
258 |
+
</ul>
|
259 |
+
<div style="clear:both;"></div>
|
260 |
+
</div>
|
261 |
+
<?php endif;?>
|
262 |
+
<?php endif;?>
|
app/design/frontend/default/freepop/template/smartmenu/shopby.phtml
ADDED
@@ -0,0 +1,138 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Category layered navigation
|
4 |
+
*
|
5 |
+
*
|
6 |
+
*/
|
7 |
+
?>
|
8 |
+
|
9 |
+
<?php $allows = Mage::getStoreConfig("smartmenu/smartmenu/override"); ?>
|
10 |
+
<?php if($allows==1):?>
|
11 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/expanding')==true ):?>
|
12 |
+
<?php if($this->canShowBlock()): ?>
|
13 |
+
<div class="mw_shopby">
|
14 |
+
<div class="mw_shopby_head">
|
15 |
+
<h3 class="title" style="display: none;"><?php echo $this->__('Shop by') ?></h3>
|
16 |
+
</div>
|
17 |
+
<?php echo $this->getStateHtml() ?>
|
18 |
+
<?php if($this->canShowOptions()): ?>
|
19 |
+
<h4><?php echo $this->__('Shopping Options') ?></h4>
|
20 |
+
<div class="mw_shopby_content">
|
21 |
+
<div class="narrow-by">
|
22 |
+
<?php $_filters = $this->getFilters() ?>
|
23 |
+
<ul id="menu">
|
24 |
+
<?php foreach ($_filters as $_filter): ?>
|
25 |
+
<?php if($_filter->getItemsCount()): ?>
|
26 |
+
<li>
|
27 |
+
<a href="#" class="title_auto" onclick="return false;"><?php echo $this->__($_filter->getName()) ?></a>
|
28 |
+
<?php echo $_filter->getHtml() ?>
|
29 |
+
|
30 |
+
</li>
|
31 |
+
<?php endif; ?>
|
32 |
+
<?php endforeach; ?>
|
33 |
+
</ul>
|
34 |
+
</div>
|
35 |
+
</div>
|
36 |
+
<?php endif; ?>
|
37 |
+
</div>
|
38 |
+
<?php endif; ?>
|
39 |
+
<?php else:?>
|
40 |
+
<?php if(Mage::getStoreConfig('smartmenu/smartmenu/collapse')==true ):?>
|
41 |
+
<?php if($this->canShowBlock()): ?>
|
42 |
+
<div class="block mw_shopby">
|
43 |
+
<div class="block-title">
|
44 |
+
<strong>
|
45 |
+
<span><?php echo $this->__('Shop by')?></span>
|
46 |
+
</strong>
|
47 |
+
</div>
|
48 |
+
<h4><?php echo $this->__('Shopping Options') ?></h4>
|
49 |
+
<div class="block-content">
|
50 |
+
<?php echo $this->getStateHtml() ?>
|
51 |
+
<?php if($this->canShowOptions()): ?>
|
52 |
+
<div class="mw_shopby_content">
|
53 |
+
<div class="narrow-by">
|
54 |
+
<?php $_filters = $this->getFilters() ?>
|
55 |
+
<ul id="shopby">
|
56 |
+
<?php foreach ($_filters as $_filter): ?>
|
57 |
+
<?php if($_filter->getItemsCount()): ?>
|
58 |
+
<li>
|
59 |
+
<span class="title"><a href="javascript:;"><?php echo $this->__($_filter->getName()) ?></a></span>
|
60 |
+
<?php echo $_filter->getHtml() ?>
|
61 |
+
|
62 |
+
</li>
|
63 |
+
<?php endif; ?>
|
64 |
+
<?php endforeach; ?>
|
65 |
+
</ul>
|
66 |
+
</div>
|
67 |
+
</div>
|
68 |
+
<?php endif; ?>
|
69 |
+
</div>
|
70 |
+
</div>
|
71 |
+
<?php endif; ?>
|
72 |
+
<?php else:?>
|
73 |
+
|
74 |
+
<?php if($this->canShowBlock()): ?>
|
75 |
+
<div class="mw_shopby">
|
76 |
+
<div class="mw_shopby_head">
|
77 |
+
<h3 class="title" style="display: none;"><?php echo $this->__('Shop by') ?></h3>
|
78 |
+
</div>
|
79 |
+
<?php echo $this->getStateHtml() ?>
|
80 |
+
<?php if($this->canShowOptions()): ?>
|
81 |
+
<h4><?php echo $this->__('Shopping Options') ?></h4>
|
82 |
+
<div class="mw_shopby_content">
|
83 |
+
<div class="narrow-by">
|
84 |
+
<?php $_filters = $this->getFilters() ?>
|
85 |
+
<ul id="menu_collap">
|
86 |
+
<?php foreach ($_filters as $_filter): ?>
|
87 |
+
<?php if($_filter->getItemsCount()): ?>
|
88 |
+
<li>
|
89 |
+
<a href="#" class="select_collap" onclick="return false;"><?php echo $this->__($_filter->getName()) ?></a>
|
90 |
+
<?php echo $_filter->getHtml() ?>
|
91 |
+
|
92 |
+
</li>
|
93 |
+
<?php endif; ?>
|
94 |
+
<?php endforeach; ?>
|
95 |
+
</ul>
|
96 |
+
</div>
|
97 |
+
</div>
|
98 |
+
<?php endif; ?>
|
99 |
+
</div>
|
100 |
+
<?php endif; ?>
|
101 |
+
|
102 |
+
<?php endif; ?>
|
103 |
+
<!-- [ends] .browse-by // -->
|
104 |
+
<?php endif; ?>
|
105 |
+
<?php else:?>
|
106 |
+
<?php if($this->canShowBlock()): ?>
|
107 |
+
<div class="mw_shopby1">
|
108 |
+
<div class="mw_shopby1_head">
|
109 |
+
<h3 class="title" style="display: none;"><?php echo $this->__('Shop by') ?></h3>
|
110 |
+
</div>
|
111 |
+
<?php echo $this->getStateHtml() ?>
|
112 |
+
<?php if($this->canShowOptions()): ?>
|
113 |
+
<h4><?php echo $this->__('Shopping Options') ?></h4>
|
114 |
+
<div class="mw_shopby1_content">
|
115 |
+
<div class="narrow-by">
|
116 |
+
<?php $_filters = $this->getFilters() ?>
|
117 |
+
<ul class="sf-menu sf-vertical sf-js-enabled sf-shadow">
|
118 |
+
<?php foreach ($_filters as $_filter): ?>
|
119 |
+
<?php if($_filter->getItemsCount()): ?>
|
120 |
+
<li>
|
121 |
+
<a href="#" onclick="return false;"><?php echo $this->__($_filter->getName()) ?></a>
|
122 |
+
<?php $a= $_filter->getHtml();
|
123 |
+
|
124 |
+
$a = str_replace("ol","ul",$a);
|
125 |
+
echo $a;
|
126 |
+
|
127 |
+
?>
|
128 |
+
|
129 |
+
</li>
|
130 |
+
<?php endif; ?>
|
131 |
+
<?php endforeach; ?>
|
132 |
+
</ul>
|
133 |
+
</div>
|
134 |
+
</div>
|
135 |
+
<?php endif; ?>
|
136 |
+
</div>
|
137 |
+
<?php endif; ?>
|
138 |
+
<?php endif;?>
|
app/design/frontend/default/freepop/template/testimonial/list.phtml
ADDED
@@ -0,0 +1,135 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<link rel="stylesheet" type="text/css" href="<?php echo $this->getSkinUrl('css/testimonial/style.css')?>" />
|
2 |
+
<style>
|
3 |
+
.mw_clear{clear:both;width:100%;}
|
4 |
+
</style>
|
5 |
+
<h3><?php echo Mage::helper('testimonial')->__('What our customers say'); ?></h3>
|
6 |
+
<div style="float:right; font-weight:bold; margin-bottom:0.4em;margin-right:0.4em;"><a href="<?php echo Mage::getUrl("testimonial/submit"); ?>"><?php echo Mage::helper('testimonial')->__('Submit Your Testimonial'); ?></a></div>
|
7 |
+
<div class="mw_clear"></div>
|
8 |
+
<?php
|
9 |
+
$testimonial = $this->getTestimonials();
|
10 |
+
$allow_media = (Mage::getStoreConfig('hm_testimonial/general/allow_media')) ? Mage::getStoreConfig('hm_testimonial/general/allow_media'):0;
|
11 |
+
?>
|
12 |
+
<?php
|
13 |
+
if($testimonial->count() < 1):
|
14 |
+
?>
|
15 |
+
<div class="postWrapper">
|
16 |
+
<p><?php echo Mage::helper('testimonial')->__('No Testimonials'); ?></p>
|
17 |
+
</div>
|
18 |
+
<?php
|
19 |
+
else:
|
20 |
+
?>
|
21 |
+
<div class="postWrapper">
|
22 |
+
<?php foreach ($testimonial as $post): ?>
|
23 |
+
<?php if($allow_media){?>
|
24 |
+
<div style="border-bottom:1px solid silver;">
|
25 |
+
<div class="mw_clear" style="height:5px;"></div>
|
26 |
+
<div style="float:left;width:50%;">
|
27 |
+
<?php $media = $post->getMedia();
|
28 |
+
if($media){
|
29 |
+
$file_ext = array();
|
30 |
+
$file_ext = explode('.',$media);
|
31 |
+
$file_ext = $file_ext[sizeof($file_ext)-1];
|
32 |
+
if($file_ext=='flv'|| $file_ext=='avi'|| $file_ext=='mp3'){?>
|
33 |
+
<object id="player" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" name="player" width="<?php echo $this->getWidthMedia();?>"
|
34 |
+
height="<?php echo $this->getHeightMedia();?>">
|
35 |
+
<param name="movie" value="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).'testimonial/'.'player-viral.swf';?>" />
|
36 |
+
<param name="allowfullscreen" value="true" />
|
37 |
+
<param name="allowscriptaccess" value="always" />
|
38 |
+
<param name="flashvars" value="file=<?php echo $this->getMediaUrl($post->getMedia());?>" />
|
39 |
+
<embed
|
40 |
+
type="application/x-shockwave-flash"
|
41 |
+
id="player2"
|
42 |
+
name="player2"
|
43 |
+
src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).'testimonial/'.'player-viral.swf';?>"
|
44 |
+
allowscriptaccess="always"
|
45 |
+
allowfullscreen="true"
|
46 |
+
width="<?php echo $this->getWidthMedia();?>"
|
47 |
+
height="<?php echo $this->getHeightMedia(); ?>"
|
48 |
+
flashvars="file=<?php echo $this->getMediaUrl($post->getMedia());?>"
|
49 |
+
/>
|
50 |
+
</object>
|
51 |
+
<?php }elseif ($file_ext=='swf'){?>
|
52 |
+
<object classid="clsid:your-class-id" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0">
|
53 |
+
<param name=movie value="">
|
54 |
+
<param name="autoplay" value="false" />
|
55 |
+
<param name="controller" value="true" />
|
56 |
+
<param name=quality value=high>
|
57 |
+
<param name="wmode" value="transparent">
|
58 |
+
<embed src="<?php echo $this->getMediaUrl($post->getMedia());?>"
|
59 |
+
quality="high"
|
60 |
+
wmode="transparent"
|
61 |
+
width="<?php echo $this->getWidthMedia();?>"
|
62 |
+
height="<?php echo $this->getHeightMedia();?>"
|
63 |
+
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
|
64 |
+
type="application/x-shockwave-flash">
|
65 |
+
</embed>
|
66 |
+
</object>
|
67 |
+
<?php }elseif($file_ext=='mp4'){?>
|
68 |
+
<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab"
|
69 |
+
width="<?php echo $this->getWidthMedia(); ?>" height="<?php echo $this->HeightMedia(); ?>">
|
70 |
+
<param name="src" value="<?php echo $this->getMediaUrl() ?>" />
|
71 |
+
<param name="autoplay" value="false" />
|
72 |
+
<param name="controller" value="true" />
|
73 |
+
<embed width="<?php echo $this->getWidthMedia(); ?>" height="<?php echo $this->getHeightMedia();?>"
|
74 |
+
src="<?php echo $this->getMediaUrl($post->getMedia());?>"
|
75 |
+
type="video/mpeg"
|
76 |
+
pluginspage="http://www.apple.com/quicktime/download" autoplay="false" controller="true">
|
77 |
+
</object>
|
78 |
+
<?php }else{?>
|
79 |
+
<!--<img src="<?php echo $this->getMediaUrl($post->getMedia());?>" width="<?php echo $this->getWidthMedia();?>" height="<?php echo $this->getHeightMedia();?>">-->
|
80 |
+
<?php //echo $post->getMedia(); ?>
|
81 |
+
<img src="<?php echo Mage::helper('testimonial/image')->init($post->getMedia())->resize(intval($this->getWidthMedia()), intval($this->getHeightMedia())); ?>" />
|
82 |
+
<?php }?>
|
83 |
+
<?php }?>
|
84 |
+
</div>
|
85 |
+
<div style="float:right;width:50%;" class="tes_info">
|
86 |
+
<div style="font-style:italic;margin:0.4em 0.4em;"><?php echo $post->getDescription(); ?></div>
|
87 |
+
<div class="mw_clear"></div>
|
88 |
+
<div style="float:right;margin:0.4em 0.4em;"><?php echo $post->getClientName();?>
|
89 |
+
<?php
|
90 |
+
|
91 |
+
$allow_Email = Mage::getStoreConfig('hm_testimonial/general/allow_email');
|
92 |
+
$allow_address = Mage::getStoreConfig('hm_testimonial/general/allow_address');
|
93 |
+
$allow_company = Mage::getStoreConfig('hm_testimonial/general/allow_company');
|
94 |
+
if($allow_Email && $post->getEmail()!=''){
|
95 |
+
echo ' - '.$post->getEmail();
|
96 |
+
}
|
97 |
+
if($allow_company && $post->getCompany()!='') {?>- <a href="<?php echo $post->getWebsite(); ?>" ><?php echo $post->getCompany();?></a><?php }
|
98 |
+
if($allow_address && $post->getAddress()!=''){
|
99 |
+
echo ' - '.$post->getAddress();
|
100 |
+
}
|
101 |
+
?>
|
102 |
+
</div>
|
103 |
+
<div class="mw_clear"></div>
|
104 |
+
</div>
|
105 |
+
<div class="mw_clear" style="height:4px;"></div>
|
106 |
+
</div>
|
107 |
+
<?php }else{?>
|
108 |
+
<div>
|
109 |
+
<blockquote style="font-style:italic; margin-right:0.4em; text-indent: 20px;margin: 0px;background:url('<?php echo $this->getSkinUrl('images/testimonial/icon_bt.gif');?>') no-repeat left top;"><?php echo $post->getDescription(); ?></blockquote>
|
110 |
+
<p style="float:right; margin-right:0.4em; "><?php echo $post->getClientName();?>
|
111 |
+
<?php
|
112 |
+
|
113 |
+
$allow_Email = Mage::getStoreConfig('hm_testimonial/general/allow_email');
|
114 |
+
$allow_address = Mage::getStoreConfig('hm_testimonial/general/allow_address');
|
115 |
+
$allow_company = Mage::getStoreConfig('hm_testimonial/general/allow_company');
|
116 |
+
if($allow_Email && $post->getEmail()!=''){
|
117 |
+
echo ' - '.$post->getEmail();
|
118 |
+
}
|
119 |
+
if($allow_company && $post->getCompany()!='') {?>- <a href="<?php echo $post->getWebsite(); ?>" ><?php echo $post->getCompany();?></a><?php }
|
120 |
+
if($allow_address && $post->getAddress()!=''){
|
121 |
+
echo ' - '.$post->getAddress();
|
122 |
+
}
|
123 |
+
?>
|
124 |
+
</p>
|
125 |
+
</div>
|
126 |
+
<div class="mw_clear"></div>
|
127 |
+
<?php }?>
|
128 |
+
<?php endforeach; ?>
|
129 |
+
</div>
|
130 |
+
<?php
|
131 |
+
echo $this->getToolbarHtml();
|
132 |
+
?>
|
133 |
+
<?php
|
134 |
+
endif;
|
135 |
+
?>
|
app/design/frontend/default/freepop/template/testimonial/list_nopaging.phtml
ADDED
@@ -0,0 +1,131 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<link rel="stylesheet" type="text/css" href="<?php echo $this->getSkinUrl('css/testimonial/style.css')?>" />
|
2 |
+
<style>
|
3 |
+
.mw_clear{clear:both;width:100%;}
|
4 |
+
</style>
|
5 |
+
<h3><?php echo Mage::helper('testimonial')->__('What our customers say'); ?></h3>
|
6 |
+
<div style="float:right; font-weight:bold; margin-bottom:0.4em;margin-right:0.4em;"><a href="<?php echo Mage::getUrl("testimonial/submit"); ?>"><?php echo Mage::helper('testimonial')->__('Submit Your Testimonial'); ?></a></div>
|
7 |
+
<div class="mw_clear"></div>
|
8 |
+
<?php
|
9 |
+
$testimonial = $this->getTestimonials();
|
10 |
+
$allow_media = (Mage::getStoreConfig('hm_testimonial/general/allow_media')) ? Mage::getStoreConfig('hm_testimonial/general/allow_media'):0;
|
11 |
+
?>
|
12 |
+
<?php
|
13 |
+
if($testimonial->count() < 1):
|
14 |
+
?>
|
15 |
+
<div class="postWrapper">
|
16 |
+
<p><?php echo Mage::helper('testimonial')->__('No Testimonials'); ?></p>
|
17 |
+
</div>
|
18 |
+
<?php
|
19 |
+
else:
|
20 |
+
?>
|
21 |
+
<div class="postWrapper">
|
22 |
+
<?php foreach ($testimonial as $post): ?>
|
23 |
+
<?php if($allow_media){?>
|
24 |
+
<div style="border-bottom:1px solid silver;">
|
25 |
+
<div class="mw_clear" style="height:5px;"></div>
|
26 |
+
<div style="float:left;width:50%;">
|
27 |
+
<?php $media = $post->getMedia();
|
28 |
+
if($media){
|
29 |
+
$file_ext = array();
|
30 |
+
$file_ext = explode('.',$media);
|
31 |
+
$file_ext = $file_ext[sizeof($file_ext)-1];
|
32 |
+
if($file_ext=='flv'|| $file_ext=='avi'|| $file_ext=='mp3'){?>
|
33 |
+
<object id="player" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" name="player" width="<?php echo $this->getWidthMedia();?>"
|
34 |
+
height="<?php echo $this->getHeightMedia();?>">
|
35 |
+
<param name="movie" value="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).'testimonial/'.'player-viral.swf';?>" />
|
36 |
+
<param name="allowfullscreen" value="true" />
|
37 |
+
<param name="allowscriptaccess" value="always" />
|
38 |
+
<param name="flashvars" value="file=<?php echo $this->getMediaUrl($post->getMedia());?>" />
|
39 |
+
<embed
|
40 |
+
type="application/x-shockwave-flash"
|
41 |
+
id="player2"
|
42 |
+
name="player2"
|
43 |
+
src="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).'testimonial/'.'player-viral.swf';?>"
|
44 |
+
allowscriptaccess="always"
|
45 |
+
allowfullscreen="true"
|
46 |
+
width="<?php echo $this->getWidthMedia();?>"
|
47 |
+
height="<?php echo $this->getHeightMedia(); ?>"
|
48 |
+
flashvars="file=<?php echo $this->getMediaUrl($post->getMedia());?>"
|
49 |
+
/>
|
50 |
+
</object>
|
51 |
+
<?php }elseif ($file_ext=='swf'){?>
|
52 |
+
<object classid="clsid:your-class-id" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0">
|
53 |
+
<param name=movie value="">
|
54 |
+
<param name=quality value=high>
|
55 |
+
<param name="wmode" value="transparent">
|
56 |
+
<embed src="<?php echo $this->getMediaUrl($post->getMedia());?>"
|
57 |
+
quality="high"
|
58 |
+
wmode="transparent"
|
59 |
+
width="<?php echo $this->getWidthMedia();?>"
|
60 |
+
height="<?php echo $this->getHeightMedia();?>"
|
61 |
+
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
|
62 |
+
type="application/x-shockwave-flash">
|
63 |
+
</embed>
|
64 |
+
</object>
|
65 |
+
<?php }elseif($file_ext=='mp4'){?>
|
66 |
+
<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab"
|
67 |
+
width="<?php echo $this->getWidthMedia(); ?>" height="<?php echo $this->HeightMedia(); ?>">
|
68 |
+
<param name="src" value="<?php echo $this->getMediaUrl() ?>" />
|
69 |
+
<param name="autoplay" value="false" />
|
70 |
+
<param name="controller" value="true" />
|
71 |
+
<embed width="<?php echo $this->getWidthMedia(); ?>" height="<?php echo $this->getHeightMedia();?>"
|
72 |
+
src="<?php echo $this->getMediaUrl($post->getMedia());?>"
|
73 |
+
type="video/mpeg"
|
74 |
+
pluginspage="http://www.apple.com/quicktime/download" autoplay="false" controller="true">
|
75 |
+
</object>
|
76 |
+
<?php }else{?>
|
77 |
+
<!--<img src="<?php echo $this->getMediaUrl($post->getMedia());?>" width="<?php echo $this->getWidthMedia();?>" height="<?php echo $this->getHeightMedia();?>">-->
|
78 |
+
<?php if($media!=""){?>
|
79 |
+
<img src="<?php echo Mage::helper('testimonial/image')->init($post->getMedia())->resize(intval($this->getWidthMedia()), intval($this->getHeightMedia())); ?>" style="border:1px solid silver;"/>
|
80 |
+
<?php } ?>
|
81 |
+
<?php }?>
|
82 |
+
<?php }?>
|
83 |
+
</div>
|
84 |
+
<div style="float:right;width:50%;" class="tes_info">
|
85 |
+
<div style="font-style:italic;margin:0.4em 0.4em;"><?php echo $post->getDescription(); ?></div>
|
86 |
+
<div class="mw_clear"></div>
|
87 |
+
<div style="float:right;margin:0.4em 0.4em;"><?php echo $post->getClientName();?>
|
88 |
+
<?php
|
89 |
+
|
90 |
+
$allow_Email = Mage::getStoreConfig('hm_testimonial/general/allow_email');
|
91 |
+
$allow_address = Mage::getStoreConfig('hm_testimonial/general/allow_address');
|
92 |
+
$allow_company = Mage::getStoreConfig('hm_testimonial/general/allow_company');
|
93 |
+
if($allow_Email && $post->getEmail()!=''){
|
94 |
+
echo ' - '.$post->getEmail();
|
95 |
+
}
|
96 |
+
if($allow_company && $post->getCompany()!='') {?>- <a href="<?php echo $post->getWebsite(); ?>" ><?php echo $post->getCompany();?></a><?php }
|
97 |
+
if($allow_address && $post->getAddress()!=''){
|
98 |
+
echo ' - '.$post->getAddress();
|
99 |
+
}
|
100 |
+
?>
|
101 |
+
</div>
|
102 |
+
<div class="mw_clear"></div>
|
103 |
+
</div>
|
104 |
+
<div class="mw_clear" style="height:4px;"></div>
|
105 |
+
</div>
|
106 |
+
<?php }else{?>
|
107 |
+
<div>
|
108 |
+
<blockquote style="font-style:italic; margin-right:0.4em; text-indent: 20px;margin: 0px;background:url('<?php echo $this->getSkinUrl('images/testimonial/icon_bt.gif');?>') no-repeat left top;"><?php echo $post->getDescription(); ?></blockquote>
|
109 |
+
<p style="float:right; margin-right:0.4em; "><?php echo $post->getClientName();?>
|
110 |
+
<?php
|
111 |
+
|
112 |
+
$allow_Email = Mage::getStoreConfig('hm_testimonial/general/allow_email');
|
113 |
+
$allow_address = Mage::getStoreConfig('hm_testimonial/general/allow_address');
|
114 |
+
$allow_company = Mage::getStoreConfig('hm_testimonial/general/allow_company');
|
115 |
+
if($allow_Email && $post->getEmail()!=''){
|
116 |
+
echo ' - '.$post->getEmail();
|
117 |
+
}
|
118 |
+
if($allow_company && $post->getCompany()!='') {?>- <a href="<?php echo $post->getWebsite(); ?>" ><?php echo $post->getCompany();?></a><?php }
|
119 |
+
if($allow_address && $post->getAddress()!=''){
|
120 |
+
echo ' - '.$post->getAddress();
|
121 |
+
}
|
122 |
+
?>
|
123 |
+
</p>
|
124 |
+
</div>
|
125 |
+
<div class="mw_clear"></div>
|
126 |
+
<?php }?>
|
127 |
+
<?php endforeach; ?>
|
128 |
+
</div>
|
129 |
+
<?php
|
130 |
+
endif;
|
131 |
+
?>
|
app/design/frontend/default/freepop/template/testimonial/pager.phtml
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
<?php
|
3 |
+
/**
|
4 |
+
* Pager template
|
5 |
+
*
|
6 |
+
* @see Hm_Testimonial_Block_Html_Pager
|
7 |
+
*/
|
8 |
+
?>
|
9 |
+
<?php
|
10 |
+
if($this->getCollection()->getSize()): ?>
|
11 |
+
<table class="mw_tt_pager" cellspacing="0">
|
12 |
+
<tr>
|
13 |
+
<td>
|
14 |
+
<?php if($this->getLastPageNum()>1): ?>
|
15 |
+
<?php echo $this->__('Items %s to %s of %s total', $this->getFirstNum(), $this->getLastNum(), $this->getTotalNum()) ?>
|
16 |
+
<?php else: ?>
|
17 |
+
<strong><?php echo $this->__('%s Item(s)', $this->getTotalNum()) ?></strong>
|
18 |
+
<?php endif; ?>
|
19 |
+
</td>
|
20 |
+
<?php if($this->getLastPageNum()>1): ?>
|
21 |
+
<td class="pages">
|
22 |
+
<strong><?php echo $this->__('Page:') ?></strong>
|
23 |
+
<ol>
|
24 |
+
<?php if (!$this->isFirstPage()): ?>
|
25 |
+
<li><a href="<?php echo $this->getPreviousPageUrl() ?>"><img src="<?php echo $this->getSkinUrl('images/pager_arrow_left.gif') ?>" alt="<?php echo $this->__('Previous Page') ?>" /></a></li>
|
26 |
+
<?php endif ?>
|
27 |
+
<?php foreach ($this->getPages() as $_page): ?>
|
28 |
+
<?php if ($this->isPageCurrent($_page)): ?>
|
29 |
+
<li><span class="on"><?php echo $_page ?></span></li>
|
30 |
+
<?php else: ?>
|
31 |
+
<li><a href="<?php echo $this->getPageUrl($_page) ?>"><?php echo $_page ?></a></li>
|
32 |
+
<?php endif ?>
|
33 |
+
<?php endforeach;; ?>
|
34 |
+
<?php if (!$this->isLastPage()): ?>
|
35 |
+
<li><a href="<?php echo $this->getNextPageUrl() ?>"><img src="<?php echo $this->getSkinUrl('images/pager_arrow_right.gif') ?>" alt="<?php echo $this->__('Next Page') ?>"/></a></li>
|
36 |
+
<?php endif ?>
|
37 |
+
</ol>
|
38 |
+
</td>
|
39 |
+
<?php endif; ?>
|
40 |
+
<?php if($this->getShowPerPage()): ?>
|
41 |
+
<td class="a-right">
|
42 |
+
<?php echo $this->__('Show') ?> <select onchange="setLocation(this.value)">
|
43 |
+
<?php foreach ($this->getAvailableLimit() as $_key=>$_limit): ?>
|
44 |
+
<option value="<?php echo $this->getLimitUrl($_key) ?>"<?php if($this->isLimitCurrent($_key)): ?> selected="selected"<?php endif ?>>
|
45 |
+
<?php echo $_limit ?>
|
46 |
+
</option>
|
47 |
+
<?php endforeach; ?>
|
48 |
+
</select> <?php echo $this->__('per page') ?>
|
49 |
+
</td>
|
50 |
+
<?php endif ?>
|
51 |
+
</tr>
|
52 |
+
</table>
|
53 |
+
<?php endif ?>
|
app/design/frontend/default/freepop/template/testimonial/submit.phtml
ADDED
@@ -0,0 +1,97 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div class="page-head">
|
2 |
+
<h3><?php echo Mage::helper('testimonial')->__('Write Your Own Testimonial') ?></h3>
|
3 |
+
</div>
|
4 |
+
<form action="<?php echo $this->getAction() ?>" enctype="multipart/form-data" method="post" id="testimonial-form" name="testimonial-form">
|
5 |
+
<fieldset>
|
6 |
+
|
7 |
+
<?php // do not remove div - some problem whith validator in IE ?>
|
8 |
+
<div>
|
9 |
+
<label for="client_name"><?php echo Mage::helper('testimonial')->__('Your Name') ?><span class="required">*</span></label><br />
|
10 |
+
<input class="required-entry input-text" name="client_name" id="client_name" style="width: 450px;" type="text" value="" />
|
11 |
+
</div>
|
12 |
+
|
13 |
+
<div>
|
14 |
+
<label for="company"><?php echo Mage::helper('testimonial')->__('Your Company') ?></label><br />
|
15 |
+
<input name="company" class="input-text" id="company" style="width: 450px;" type="text" value="" />
|
16 |
+
</div>
|
17 |
+
|
18 |
+
<div>
|
19 |
+
<label for="website"><?php echo Mage::helper('testimonial')->__('Your Website') ?></label><br />
|
20 |
+
<input name="website" class="input-text" id="website" style="width: 450px;" type="text" value="" />
|
21 |
+
</div>
|
22 |
+
|
23 |
+
<div>
|
24 |
+
<label for="email"><?php echo Mage::helper('testimonial')->__('Your Email') ?></label><br />
|
25 |
+
<input name="email" type="text" id="email" style="width: 450px;" class="required-entry validate-email input-text" />
|
26 |
+
</div>
|
27 |
+
<div>
|
28 |
+
<label for="address"><?php echo Mage::helper('testimonial')->__('Your Address') ?></label><br />
|
29 |
+
<input name="address" type="text" id="address" style="width: 450px;" class="input-text required-entry" />
|
30 |
+
</div>
|
31 |
+
<div style="padding:5px 0px;">
|
32 |
+
<label for="media"><?php echo Mage::helper('testimonial')->__('Upload Media:') ?></label>
|
33 |
+
<input type="file" name="media" id="media" style="width:200px;margin-left:20px;" class="input-text required-entry" />
|
34 |
+
</div>
|
35 |
+
<div>
|
36 |
+
<label for="description"><?php echo Mage::helper('testimonial')->__('Your Testimonial') ?><span class="required">*</span></label><br />
|
37 |
+
<textarea class="required-entry" name="description" id="description" cols="53" rows="10" style="width: 450px;"></textarea>
|
38 |
+
</div>
|
39 |
+
<div>
|
40 |
+
<?php if (Mage::getStoreConfig("hm_testimonial/general/enable")==true): ?>
|
41 |
+
<label for="security_code"><?php echo Mage::helper('testimonial')->__('Security code') ?><span class="required">*</span></label><br />
|
42 |
+
<div class="div_submit">
|
43 |
+
<div class="div_submit_content" >
|
44 |
+
<input class="input-text required-entry" type="text" id="security_code" name="security_code"/>
|
45 |
+
<script type="text/javascript">
|
46 |
+
// a regular expression to test for Base64 data
|
47 |
+
var BASE64_DATA = /^data:.*;base64/i;
|
48 |
+
// path to the PHP module that will decode the encoded data
|
49 |
+
var base64Path = "<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB).'js/testimonial/base64.php'?>";
|
50 |
+
function fixBase64(img) {
|
51 |
+
// check the image src
|
52 |
+
if (BASE64_DATA.test(img.src)) {
|
53 |
+
// pass the data to the PHP routine
|
54 |
+
img.src = base64Path + "?" + img.src.slice(5);
|
55 |
+
}
|
56 |
+
};
|
57 |
+
// fix images on page load
|
58 |
+
onload = function() {
|
59 |
+
for (var i = 0; i < document.images.length; i++) {
|
60 |
+
fixBase64(document.images[i]);
|
61 |
+
}
|
62 |
+
};
|
63 |
+
</script>
|
64 |
+
<?php
|
65 |
+
$im = imagecreate(60, 20);
|
66 |
+
$bg = imagecolorallocate($im, 0 , 0, 0);
|
67 |
+
$textcolor = imagecolorallocate($im, 255, 255, 255);
|
68 |
+
$random=rand(1000,9999);
|
69 |
+
imagestring($im, 10, 10, 2, $random , $textcolor);
|
70 |
+
$filenametemp="gif".time().".gif";
|
71 |
+
ImageGIF($im, $filenametemp);
|
72 |
+
$ImageData = file_get_contents($filenametemp);
|
73 |
+
$ImageDataEnc = base64_encode($ImageData);
|
74 |
+
unlink($filenametemp);
|
75 |
+
?>
|
76 |
+
</div>
|
77 |
+
<div class="div_submit">
|
78 |
+
<img id="security_image" style="float:left" alt="<?php echo $random ?>" src="data:image/gif;base64,<?php echo $ImageDataEnc?>" /></div>
|
79 |
+
</div>
|
80 |
+
<input type="hidden" name="codemd5" id="codemd5" value="<?php echo md5($random)?>"/>
|
81 |
+
|
82 |
+
<?php else: ?>
|
83 |
+
<input type="hidden" name="codemd5" id="codemd5" value=""/>
|
84 |
+
<?php endif; ?>
|
85 |
+
|
86 |
+
</div>
|
87 |
+
|
88 |
+
<div class="button-set">
|
89 |
+
<button class="form-button right" type="submit"><span><?php echo Mage::helper('testimonial')->__('Submit Testimonial') ?></span></button>
|
90 |
+
</div>
|
91 |
+
</fieldset>
|
92 |
+
</form>
|
93 |
+
<script type="text/javascript">
|
94 |
+
//<![CDATA[
|
95 |
+
// var testimonialForm = new VarienForm('testimonial-form');
|
96 |
+
//]]>
|
97 |
+
</script>
|
app/design/frontend/default/freepop/template/testimonial/testimonial.phtml
ADDED
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
<script src="<?php echo $this->getSkinUrl('js/testimonial/jquery.cycle.js')?>" type="text/javascript"></script>
|
3 |
+
<link rel="stylesheet" type="text/css" href="<?php echo $this->getSkinUrl('css/testimonial/style.css')?>" />
|
4 |
+
|
5 |
+
<script type="text/javascript">
|
6 |
+
$j = jQuery.noConflict();
|
7 |
+
$j(document).ready(function() {
|
8 |
+
$j('#slideshow_advance').cycle({
|
9 |
+
fx: '<?php echo (Mage::getStoreConfig('hm_testimonial/general/slider')) ? Mage::getStoreConfig('hm_testimonial/general/slider'):''; ?>',
|
10 |
+
timeout: <?php echo (Mage::getStoreConfig('hm_testimonial/general/delay')) ? Mage::getStoreConfig('hm_testimonial/general/delay') : 1000; ?>
|
11 |
+
});
|
12 |
+
});
|
13 |
+
</script>
|
14 |
+
|
15 |
+
<?php $testimonials = $this->getTestimonials(); ?>
|
16 |
+
<?php
|
17 |
+
if($testimonials->count() < 1):
|
18 |
+
?>
|
19 |
+
<div class="postWrapper">
|
20 |
+
<?php echo Mage::helper('testimonial')->__('No Testimonials'); ?>
|
21 |
+
</div>
|
22 |
+
<?php
|
23 |
+
else:
|
24 |
+
?>
|
25 |
+
<div class="postWrapper">
|
26 |
+
<div class="box base-mini mini-cart">
|
27 |
+
<div class="head">
|
28 |
+
<h4><?php echo Mage::helper('testimonial')->__('Testimonials'); ?></h4>
|
29 |
+
</div>
|
30 |
+
<div class="content content_test">
|
31 |
+
<h1><img src="<?php echo $this->getSkinUrl()?>images/testimonial/icon_top.gif"> </h1>
|
32 |
+
<div id="slideshow">
|
33 |
+
<?php foreach ($testimonials as $testimonial): ?>
|
34 |
+
<div>
|
35 |
+
<font style="font-style:italic"><?php echo $testimonial->getPostContent(); ?></font>
|
36 |
+
<p style="float:right; margin-right:0.4em;"><?php echo $testimonial->getClientName();?>
|
37 |
+
<?php
|
38 |
+
$allow_Email = Mage::getStoreConfig('hm_testimonial/general/allow_email');
|
39 |
+
$allow_address = Mage::getStoreConfig('hm_testimonial/general/allow_address');
|
40 |
+
$allow_company = Mage::getStoreConfig('hm_testimonial/general/allow_company');
|
41 |
+
if($allow_Email && $testimonial->getEmail()!=''){
|
42 |
+
echo ' - '.$testimonial->getEmail();
|
43 |
+
}
|
44 |
+
if($allow_company && $testimonial->getCompany()!='') {?>- <a href="<?php echo $testimonial->getWebsite(); ?>" ><?php echo $testimonial->getCompany();?></a><?php }
|
45 |
+
if($allow_address && $testimonial->getAddress()!=''){
|
46 |
+
echo ' - '.$testimonial->getAddress();
|
47 |
+
}
|
48 |
+
|
49 |
+
?>
|
50 |
+
</p>
|
51 |
+
</div>
|
52 |
+
|
53 |
+
<?php endforeach; ?>
|
54 |
+
</div>
|
55 |
+
<h1 class="icon_bt"><img src="<?php echo $this->getSkinUrl()?>images/testimonial/icon_bt.gif"> </h1>
|
56 |
+
</div>
|
57 |
+
<div class="div_bt_box">
|
58 |
+
<h6>
|
59 |
+
<a href="<?php echo Mage::getUrl("testimonial"); ?>">
|
60 |
+
<?php echo Mage::helper('testimonial')->__('View All'); ?>
|
61 |
+
</a>
|
62 |
+
|
63 |
+
</h6>
|
64 |
+
</div>
|
65 |
+
</div>
|
66 |
+
</div>
|
67 |
+
|
68 |
+
<?php
|
69 |
+
endif;
|
70 |
+
?>
|
71 |
+
|
app/design/frontend/default/freepop/template/testimonial/testimonial_advance.phtml
ADDED
@@ -0,0 +1,79 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<script src="<?php echo $this->getSkinUrl('js/testimonial/jquery.cycle.js')?>" type="text/javascript"></script>
|
2 |
+
<link rel="stylesheet" type="text/css" href="<?php echo $this->getSkinUrl('css/testimonial/style.css')?>" />
|
3 |
+
|
4 |
+
<script type="text/javascript">
|
5 |
+
$j = jQuery.noConflict();
|
6 |
+
$j(document).ready(function() {
|
7 |
+
$j('#slideshow_advance').cycle({
|
8 |
+
fx: '<?php echo (Mage::getStoreConfig('hm_testimonial/general/slider')) ? Mage::getStoreConfig('hm_testimonial/general/slider'):''; ?>',
|
9 |
+
timeout: <?php echo (Mage::getStoreConfig('hm_testimonial/general/delay')) ? Mage::getStoreConfig('hm_testimonial/general/delay') : 1000; ?>
|
10 |
+
});
|
11 |
+
});
|
12 |
+
</script>
|
13 |
+
<?php $testimonials = $this->getRecents(); ?>
|
14 |
+
<?php
|
15 |
+
if($testimonials->count() < 1):
|
16 |
+
?>
|
17 |
+
<div class="postWrapper">
|
18 |
+
<?php echo Mage::helper('testimonial')->__('No Testimonials'); ?>
|
19 |
+
</div>
|
20 |
+
<?php
|
21 |
+
else:
|
22 |
+
?>
|
23 |
+
<div class="postWrapper">
|
24 |
+
<div class="div_testimonial_L">
|
25 |
+
<div class="div_testimonial_main_TR">
|
26 |
+
<div class="block div_testimonial_main_C">
|
27 |
+
<div class="block-title">
|
28 |
+
<strong>
|
29 |
+
<span><?php echo Mage::helper('testimonial')->__('Testimonials'); ?></span>
|
30 |
+
</strong>
|
31 |
+
</div>
|
32 |
+
<div class="block-content">
|
33 |
+
<div id="slideshow_advance">
|
34 |
+
<?php foreach ($testimonials as $testimonial): ?>
|
35 |
+
<div>
|
36 |
+
<p class="postcontents" style="font-style:italic; margin-bottom:5px;"><span>"</span>
|
37 |
+
<?php
|
38 |
+
$ldk = nl2br($testimonial->getPostContent());
|
39 |
+
if( strlen($ldk)>105){
|
40 |
+
$ldk = substr($ldk,0,105);
|
41 |
+
echo ($ldk."...");
|
42 |
+
}else{
|
43 |
+
echo $ldk ;
|
44 |
+
}
|
45 |
+
?> <span>"</span></p>
|
46 |
+
<p class="address_test" style="float:right; margin-right:0;"><?php echo $testimonial->getClientName();?>
|
47 |
+
<?php
|
48 |
+
$allow_Email = Mage::getStoreConfig('hm_testimonial/general/allow_email');
|
49 |
+
$allow_address = Mage::getStoreConfig('hm_testimonial/general/allow_address');
|
50 |
+
$allow_company = Mage::getStoreConfig('hm_testimonial/general/allow_company');
|
51 |
+
if($allow_Email && $testimonial->getEmail()!=''){
|
52 |
+
echo ' - '.$testimonial->getEmail();
|
53 |
+
}
|
54 |
+
if($allow_company && $testimonial->getCompany()!='') {?>- <a href="<?php echo $testimonial->getWebsite(); ?>" ><?php echo $testimonial->getCompany();?></a><?php }
|
55 |
+
|
56 |
+
if($allow_address && $testimonial->getAddress()!=''){
|
57 |
+
echo ' - '.$testimonial->getAddress();
|
58 |
+
}
|
59 |
+
?></p>
|
60 |
+
</div>
|
61 |
+
|
62 |
+
<?php endforeach; ?>
|
63 |
+
</div>
|
64 |
+
<div class="div_bt">
|
65 |
+
<h6>
|
66 |
+
<a href="<?php echo Mage::getUrl("testimonial"); ?>">
|
67 |
+
<?php echo Mage::helper('testimonial')->__('> View All'); ?>
|
68 |
+
</a>
|
69 |
+
|
70 |
+
</h6>
|
71 |
+
</div>
|
72 |
+
</div>
|
73 |
+
</div>
|
74 |
+
</div>
|
75 |
+
</div>
|
76 |
+
</div>
|
77 |
+
<?php
|
78 |
+
endif;
|
79 |
+
?>
|
app/design/frontend/default/freepop/template/testimonial/view.phtml
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php $testimonial = $this->getTestimonial();
|
2 |
+
?>
|
3 |
+
<div class="postWrapper">
|
4 |
+
<div class="postTitle">
|
5 |
+
<h2><?php echo $testimonial->getTitle();?></h2>
|
6 |
+
<h3><?php echo $testimonial->getCreatedTime(); ?></h3>
|
7 |
+
</div>
|
8 |
+
<div class="postContent"><?php echo $testimonial->getDescription(); ?></div>
|
9 |
+
</div>
|
package.xml
CHANGED
@@ -1,18 +1,18 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>FreePOP_Theme</name>
|
4 |
-
<version>1.
|
5 |
<stability>stable</stability>
|
6 |
<license>Free License</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Free POP is a simple, nice and clear theme for magento ecommerce site.</summary>
|
10 |
<description>Free POP is a simple, nice and clear theme for magento ecommerce site. It is suite for many kind of webshop as CD, DVD, Music, Movie...More important, it is upgraded by our experienced experts to fully compatible with all Magento versions. Furthermore, it is easy to work with and edit.</description>
|
11 |
-
<notes>
|
12 |
<authors><author><name>Hai Nguyen</name><user>mageworld</user><email>haint@mage-world.com</email></author></authors>
|
13 |
-
<date>2012-
|
14 |
-
<time>
|
15 |
-
<contents><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="freepop"><dir name="layout"><file name="catalog.xml" hash="78a61bd3d773c3552851470f50bdd79d"/><file name="catalogsearch.xml" hash="1abcf6d6a67a04b0981d9de697ac36ca"/><file name="cms.xml" hash="74a54f6cccc19fb611c1b3bc52b46653"/><file name="directory.xml" hash="324f0d988943cfe039da8a1cbe038e7f"/><file name="newsletter.xml" hash="0fd5ca9fba31c0bd0993ecd4c6258896"/><file name="page.xml" hash="3392c3162eb8860738d2da6303791dd0"/><file name="tag.xml" hash="d8d238c3c74a6804ea74162beb33fde9"/><file name="testimonial.xml" hash="d30d11511fd565adb1b60f6ca98b57ac"/></dir><dir name="template"><dir name="catalog"><dir name="category"><file name="view.phtml" hash="a586b24e651b2e2e40b785efbbbe783b"/></dir><dir name="navigation"><file name="left.phtml" hash="3ec84f187ebbea1e9950731a9c1df65c"/><file name="left_main.phtml" hash="dac8e158cbeb0b61bd8daa15a6a60f26"/><file name="top.phtml" hash="9f0f42e6e2e22d1927caaf95896a8041"/></dir><dir name="product"><dir name="list"><file name="upsell.phtml" hash="b2184773a2a45372d452fa3b96896345"/></dir><file name="list.phtml" hash="9662f1cd4977becc034b65679fb90804"/><file name="newmovies.phtml" hash="7cc5059bedc7ef0647be971060e77ce3"/><file name="newmusic.phtml" hash="96e67ae921eb4a9eadee6b5148c2e017"/><file name="view.phtml" hash="bd73ba93d97b93f8cbc31fb8987fbd6f"/></dir></dir><dir name="cms"><file name="important.phtml" hash="452747b0272ea29fc7c7e4d99ffc0ab4"/></dir><dir name="page"><file name="1column.phtml" hash="1ff69c3d247359d3df640f70180cce26"/><file name="2columns-left.phtml" hash="bc2f2a72cce1868de2a2e98f71387958"/><file name="2columns-right.phtml" hash="f711a2f2cadd7ff07c09e29b76a75d1e"/><file name="3columns.phtml" hash="6161e3644029b6b230b0ff01c4888bff"/><dir name="html"><file name="breadcrumbs.phtml" hash="fdfa76871d3340eb6e1c59990a7d07b1"/><file name="footer.phtml" hash="5af10e8508edd3d6b3042de6f1604341"/><file name="head.phtml" hash="52bae233fd72cdb897aad7797a6aee0b"/><file name="header.phtml" hash="bdbb8782647289b54dda69f2aadae65c"/></dir></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="freepop"><dir name="css"><file name="print.css" hash="fa66393ff642ef7184cd51949f30e397"/><file name="styles-ie.css" hash="c967437588a96041773583e1bdc1aa2e"/><file name="styles.css" hash="13d26da0e7f96004a6f52941700ee97c"/></dir><file name="favicon.ico" hash="88733ee53676a47fc354a61c32516e82"/><dir name="images"><file name="Thumbs.db" hash="5c59a18de83dd719dcc3ff56a5a88fe0"/><file name="Untitled-1_03.gif" hash="36d912bafee170e04bcc2a7d12dafc5c"/><file name="addto.gif" hash="eefe51ea8b6ffc70148e8ee888390b38"/><file name="banner_catalogy.gif" hash="99534c874b954ae31a70a9330c8183f7"/><file name="bg.gif" hash="68a674fe71609dc8ebee287ea631e65d"/><file name="bg_block_content.gif" hash="dd4393951d4462559e37f2346cf1a093"/><file name="bg_buttom.gif" hash="fd63f4a63860984c25825d949a9603eb"/><file name="bg_button.gif" hash="c92735d4f8e954a75966a4bb9cfc7073"/><file name="bg_button_all.gif" hash="2ebcf978e3a31e9351ff4177c6673aa2"/><file name="bg_compare_11.gif" hash="fa32a899b9cf2ab738ef2eb634e0d87e"/><file name="bg_content_03.gif" hash="ad38e78e429db89433665e7a31d7bf51"/><file name="bg_linav.gif" hash="1c533405aad78b65d345ab5fd71f3fad"/><file name="bg_new.gif" hash="351ff5ab3bac4963389febf538a00a76"/><file name="bg_shopby.gif" hash="2d7539059d67de04ad5e2817405911ab"/><file name="bg_title_03.gif" hash="3e01f219c3f09c940f31bb5b9ca0f192"/><file name="bg_title_03.png" hash="a5c1e5e3c74ce04158e979f0aeb42a16"/><file name="bg_title_catagy.gif" hash="1820ebf6718a52bcda4f5d0af99ba670"/><file name="bg_title_product.gif" hash="b7292af3475fdf182811d18d5d14bb53"/><file name="bg_top_main.gif" hash="b8632a54062d67986b8c62ab68e72540"/><file name="bkg_block-currency.png" hash="668f31380d9a1c671d3fdc10a68da1bd"/><file name="bkg_block-layered-dd.gif" hash="55a0d80cb0d780dcc68cf303429d7679"/><file name="bkg_block-layered-dt.png" hash="c751e031a8894fa53d1215e3a783692d"/><file name="bkg_collapse-gm.gif" hash="37418f23e65006dcfde07ce9b249e057"/><file name="bkg_collapse.gif" hash="2333c68e38163ed4656da82b9bcf362b"/><file name="bkg_divider1.gif" hash="260ebae91ffb1b7c663906b29a069925"/><file name="bkg_grand-total.gif" hash="10f1c3d82d78170706fa3e9c4baa7e04"/><file name="bkg_grid.gif" hash="a6f64fedbac51fb1b86184cd488cc4e6"/><file name="bkg_main1.gif" hash="6fbdc3f4972e3ab26bab39e0c38e68f6"/><file name="bkg_nav2.png" hash="1ebdd2e55d5915c8cb60536c0272990c"/><file name="bkg_opc-title-off.gif" hash="f69b40b5331ab3760f54d038daf287eb"/><file name="bkg_pipe1.gif" hash="15f1390defe198c1de726a42d1b6c1d6"/><file name="bkg_pipe2.gif" hash="7da64eefaf4da3855ab6ee76dbced0c2"/><file name="bkg_pipe3.gif" hash="11bfac1e590f0c77fb12f37d7f05cd3c"/><file name="bkg_product_collateral.gif" hash="1d4d6b22e5108aefae52709d3934f397"/><file name="bkg_products-grid3.gif" hash="6041e18c5bfb14bc17f942cebaffdb02"/><file name="bkg_rating.gif" hash="0a8777c815350ddf1e316a537ad0c335"/><file name="bkg_sp-methods.gif" hash="17d68b5449adaa87dafc62ae0afa1b9a"/><file name="bkg_tfoot.gif" hash="da2970eac0a22c850b19ee3680475d51"/><file name="bkg_th-v.gif" hash="b0d17555dfc6060941e0c067718189df"/><file name="bkg_th.gif" hash="f249911b08f2822fc0b561b7f98575d2"/><file name="bkg_toolbar.gif" hash="d5533203748d8e0cd4046ba557253271"/><file name="bkg_toolbar2.gif" hash="a884778e40311616646056c8eabd284d"/><file name="bottom_box_06.gif" hash="4e436d94352fa5d894fa24f8de927550"/><file name="bottom_box_06.png" hash="c76aa8af4ce225b0c990067e3cc09846"/><file name="btn_addtocat.png" hash="1d0325923a424a54c9cac11f9b3cbe78"/><file name="btn_checkout.gif" hash="d2060501e14e86c29e28137130e5726e"/><file name="btn_edit.gif" hash="df3565eb4e4d0dc578201df60de54b47"/><file name="btn_edit.png" hash="d65f7c6b4ce2a4ab4aa06f5a08b9a9bd"/><file name="btn_gm-close.gif" hash="346e26eece27449a2f224aef76ae372e"/><file name="btn_google_checkout.gif" hash="843d75249ce05b5d87ca5419f37b1c3b"/><file name="btn_mini_search.gif" hash="856b7ce3bc991482db4b59436ec12829"/><file name="btn_paypal_checkout.gif" hash="6edd61270b7b5632eafad10557129114"/><file name="btn_place_order.gif" hash="d35219f86ae2c983ee1a31557e37b612"/><file name="btn_proceed_to_checkout.gif" hash="4daac687b514fecfd1068539500ac3d7"/><file name="btn_proceed_to_checkout_dis.gif" hash="9e152c01d5d88f690dc52cb62428f3b6"/><file name="btn_remove.gif" hash="56f0362e5c2c958fd34bc508d03c66c2"/><file name="btn_remove2.gif" hash="234bddc4c5878c5ef16407a944824236"/><file name="btn_search.gif" hash="2d93b43c0a1c1182358677661e26a978"/><file name="btn_trash.gif" hash="bcb22f558a0eb32243a2a36645189e9f"/><file name="btn_trash.png" hash="a9e5e6c9c2b77d63d6f749cad0ca3b97"/><file name="btn_window_close.gif" hash="c83f3cbbb2aedfc580dff78d5cfb63ed"/><file name="calendar.gif" hash="b1468e5239504974c689eea5d93f86d4"/><dir name="catalog"><dir name="product"><dir name="placeholder"><file name="image.jpg" hash="097ab8a3051bc037ea3de0e17f440540"/><file name="small_image.jpg" hash="f825d16f97a640453553c79c48ebaa73"/><file name="thumbnail.jpg" hash="b2b682d28a08a748a73d2cda70ab5a57"/></dir></dir></dir><file name="center_head_06.gif" hash="5547b3d762341b870f75561f23bb7bf3"/><file name="currency_switcher_bg.gif" hash="2158d744ff03f418fbf7553c72fd82c4"/><file name="cvv.gif" hash="ed0f392004a405466291071a760b285d"/><file name="cvv.jpg" hash="e27210d810bbab732935d9410936ef87"/><file name="fam_book_open.png" hash="0ba89b9fbe7e88d4c6896ed0a1f495aa"/><file name="free_01.gif" hash="63f002481b624169d524fcfba8c7d111"/><file name="free_shipping_callout.jpg" hash="cbf2e494ef7ca50acf8826321d739559"/><file name="grid-cal.gif" hash="b1468e5239504974c689eea5d93f86d4"/><file name="head_05.gif" hash="d095688707b620157946bfc9b5796eff"/><file name="header_bg.gif" hash="7f211eedbe93388614d6e777b072ccf5"/><file name="home_07.gif" hash="9eb840c94a9a54491de7cbb4ca59ded8"/><file name="home_left_callout.jpg" hash="ee99a5586cf52e85c986d1275958a7da"/><file name="home_main_callout.jpg" hash="e6d1c119d5b24a5916fe394cb4b5cdc3"/><file name="i_arrow-top.gif" hash="3dbb0584e8eb1d96cc3d3c40c17d7aaf"/><file name="i_asc_arrow.gif" hash="40aa554212d6a1f60593c27d78d85fa3"/><file name="i_availability_only.gif" hash="bca1f00a50864171ad98317b778e869c"/><file name="i_availability_only_arrow.gif" hash="0cf32b72fefc94b89b74e4f3f02c2e93"/><file name="i_block-cart.gif" hash="cc19e21f9c89b70cc10354ff588ca8ab"/><file name="i_block-currency.gif" hash="471a2c163b7e9e82b9c1b1d86e2126e9"/><file name="i_block-list.gif" hash="fe8424127ecbe4b0d893bcf6f253dc1a"/><file name="i_block-list.png" hash="9e2d9b6438a82f45ba20649f5b0b74b8"/><file name="i_block-poll.gif" hash="52d778dddbf48b8d04226bee9370a7ef"/><file name="i_block-related.gif" hash="4e277173b6372b1a90b0f19e0388ad54"/><file name="i_block-subscribe.gif" hash="9e5fee06a543742045118a95f2debcb8"/><file name="i_block-tags.gif" hash="67d1255c2c3e9ed1a5c845f8d4e4a3ba"/><file name="i_block-tags.png" hash="b4dce30e69939e8cf367eb39700e9b43"/><file name="i_block-viewed.gif" hash="67d1255c2c3e9ed1a5c845f8d4e4a3ba"/><file name="i_block-viewed.png" hash="2b7b810190f25f3393248c1356b4c499"/><file name="i_block-wishlist.gif" hash="8f8cda89ca20ba4a9b2f8c91f73fdff9"/><file name="i_block-wishlist.png" hash="68c3111af76574f32222db587de5ea47"/><file name="i_desc_arrow.gif" hash="92fd194bfae4ce5ae3354e1e47d7ac7d"/><file name="i_discount.gif" hash="908d44da90de5e54185764d093bbdb77"/><file name="i_folder-table.gif" hash="bf006ddb591d8ac95d2e895bf2fdbc8d"/><file name="i_ma-info.gif" hash="91259557447ee80eb1110fe0c85cb3b5"/><file name="i_ma-reviews.gif" hash="859c97695ec396c0b284a0c3c7c416ad"/><file name="i_ma-tags.gif" hash="1e83e3b0b677c92b3aa8a252268f7b86"/><file name="i_msg-error.gif" hash="e4f28607f075a105e53fa3113d84bd26"/><file name="i_msg-note.gif" hash="e774ee481a2820789c1a77112377c4e0"/><file name="i_msg-success.gif" hash="834dfafd5f8b44c4b24a4c00add56fcf"/><file name="i_notice.gif" hash="ebd56dc80b8346e10e93628bc0e6c372"/><file name="i_page1.gif" hash="704f7d4eccbdf9cabbad7770f18856ff"/><file name="i_page2.gif" hash="57a04ca584e05e28dc94c7e68f0af62e"/><file name="i_pager-next.gif" hash="ed4d6640624c2b6edeab4c212314bd6d"/><file name="i_pager-prev.gif" hash="75973b020105dccbaf34e49d7852552d"/><file name="i_print.gif" hash="0aed138181495642e9ab29e55d194d40"/><file name="i_rss-big.png" hash="6cf70e7c52a3f3d7b833ccadb041a555"/><file name="i_rss.gif" hash="e5bbc388d818c142868b4a1df0b48793"/><file name="i_search_criteria.gif" hash="cf67b9cc5c311ae3f99e68cd29ae17be"/><file name="i_shipping.gif" hash="91a0d2cc2eb2391f90ec8a75c04b3183"/><file name="i_tag_add.gif" hash="a736baa992aa55b6fb71e8742a04dc82"/><file name="i_tier.gif" hash="c5189e25afeb7c1a8c4902a42832593e"/><file name="i_type_grid.gif" hash="a1e5d8ac36fb2891ea16e729b95c552c"/><file name="i_type_list.gif" hash="61333d383ec142b8d270abe77324aa5d"/><file name="icon_01.png" hash="e3297d4359e002c9639b6c532b769587"/><file name="icon_all.png" hash="1661ec257eacf2c6be0a5433f6a0a0ed"/><file name="icon_basket.gif" hash="429741bf7dbf5ed6aac49e1dcf6ef456"/><file name="icon_newspaper.gif" hash="57ce4a0cd0f97589c07237f24c460cda"/><file name="icon_table.gif" hash="3ef1946ad28582455b5aa00c0962aca1"/><file name="left_head.gif" hash="85afe5405acaa0023f109e9beffd5180"/><file name="logo.gif" hash="48b7eb03807fdf80bdfb19b872cf84b8"/><file name="logo.png" hash="139963c29d9941a17ed0cc1c7c8421b4"/><file name="logo_email.gif" hash="8de347192e0524cff7a69e4020182dbd"/><file name="logo_print.gif" hash="8de347192e0524cff7a69e4020182dbd"/><file name="magnifier_handle.gif" hash="238fbdd7959f517db11c6f57ee4daaf4"/><file name="map_popup_arrow.gif" hash="6383b40a9e7bd3c95260bef4fbb1b163"/><dir name="media"><file name="404_callout1.jpg" hash="834e53a03e2921a2fd3c135c0c7189df"/><file name="404_callout2.jpg" hash="016984b4a1579df34147f9407098db73"/><file name="about_us_img.jpg" hash="726f36dd75b5a709a1a14acab1660188"/><file name="best_selling_img01.jpg" hash="5e7337a4061a636df8ee4bf979a092ac"/><file name="best_selling_img02.jpg" hash="b9a49c0964938ec72fb834cb166b9352"/><file name="best_selling_img03.jpg" hash="e3581487fb4589baecc553f2ce8d5247"/><file name="best_selling_img04.jpg" hash="7e59bf99f5f813e327595c52d3320174"/><file name="best_selling_img05.jpg" hash="e396892daec7ffcf7244082b3e596911"/><file name="best_selling_img06.jpg" hash="2702839637efbe0fd0a4bad41cd6a551"/><file name="cell_phone_landing_banner1.jpg" hash="b25562360fc470f1091ca7ea014a3290"/><file name="col_left_callout.jpg" hash="4102087151d05c037b836bc2976b3d59"/><file name="col_right_callout.jpg" hash="efee9288d535fad301b177abefbc79ff"/><file name="electronics_cellphones.jpg" hash="8f6badbc32ce806c6109c788df6ef5e9"/><file name="electronics_digitalcameras.jpg" hash="953b8d7db6f0bdcd53b1d6b1386962b9"/><file name="electronics_laptops.jpg" hash="e050e92d72000e6bdc763a7b5888ec8a"/><file name="furniture_callout_spot.jpg" hash="28edc7d72486ab2362324995550d87af"/><file name="furnitures_bed_room.jpg" hash="b8616c5bffc23a92d2a1c97dae57b262"/><file name="furnitures_living_room.jpg" hash="2663737f3997cb1a49ce24d07dc8aefb"/><file name="head_electronics_cellphones.gif" hash="a69425966444ea597fb7c629114d5165"/><file name="head_electronics_digicamera.gif" hash="bde3cec3fc16b2d0ae57e7783eb00652"/><file name="head_electronics_laptops.gif" hash="b2c55387ffa92277315bdedeb4cb9b8f"/><file name="laptop_callout_mid1.jpg" hash="4ffb50bd3b7b32a78fd059b1571c202e"/><file name="laptop_callout_mid2.jpg" hash="662cf3881b06b090e9500496b19b03e4"/><file name="laptop_callout_mid3.jpg" hash="22aa71ecfe0aa9b6936a1eddb62d889e"/><file name="laptop_callout_spot.jpg" hash="2e469d1bd871355eaef6076487a973db"/><file name="shirts_landing_banner1.jpg" hash="4acc8620b009d835e5c25587671ea25d"/></dir><file name="menu_06.gif" hash="c93e92f9d709215cdde91a024f738343"/><file name="middle_box_03.gif" hash="a4d0bb64ed3925535b06645ba723bd5e"/><file name="narrow_by_set.gif" hash="08663578a21d6a59ba308a7a177658af"/><file name="new_movies.gif" hash="7544a602f1528f0785e09931ba7be888"/><file name="new_music.gif" hash="4727b360498d62a435ff44953e57b310"/><file name="np_cart_thumb.gif" hash="e9fdd943e0947e15f0638506f477e358"/><file name="np_more_img.gif" hash="ace357bfe3e81ffb62137cd5b25ae5e1"/><file name="np_product_main.gif" hash="d0cccda76de50efa025215ce85dacb1c"/><file name="np_thumb.gif" hash="e46270c89358ecc8341d1565c14644b8"/><file name="np_thumb2.gif" hash="8502866cdabc5c74aca7d7bd32a06a03"/><file name="opc-ajax-loader.gif" hash="e805ea7eca1f34c75ba0f93780d32d38"/><file name="pager_arrow_left.gif" hash="75973b020105dccbaf34e49d7852552d"/><file name="pager_arrow_right.gif" hash="cd47445a79a92502c8f7ec0eb70938ef"/><file name="pager_bg.gif" hash="22fc6c7ed4c93c1a1173006459f08172"/><file name="ph_callout_left_rebel.jpg" hash="0ce8ad0026d8b8a83ed7acdf6209129b"/><file name="ph_callout_left_top.gif" hash="f17a036d75e5065eb76bafbb2c8ad7ff"/><file name="product_03.gif" hash="794c137cd5bd90dc230700683bb56aaa"/><file name="product_btn.gif" hash="2c74cea0fb1618878921b6dc43bf6efd"/><file name="product_zoom_overlay_magnif.gif" hash="83834893e162221d6d9257fe67847370"/><file name="right_head.gif" hash="4f5f4b7fb7d2e753f321b53ca97215d7"/><file name="search.gif" hash="a1ef27f4afad18cc5583f1df973efa7d"/><file name="shop_access_pipe.gif" hash="15f1390defe198c1de726a42d1b6c1d6"/><file name="shopby.gif" hash="42467606f001e86eef4c20db9a13f4ec"/><file name="slider_bg.gif" hash="87bc1b46d87de4f6252c7216216627c3"/><file name="slider_btn_zoom_in.gif" hash="ef0fc67f77f30827ee67f4e744b60781"/><file name="slider_btn_zoom_out.gif" hash="68b3d1c28dc5aec4f6b64d70a6996b6f"/><file name="spacer.gif" hash="df3e567d6f16d040326c7a0ea29a4f41"/><file name="top_box_03.gif" hash="bc11eeff056a920bc106ea9538c4583d"/><file name="validation_advice_bg.gif" hash="b85432906de8985a8b14eeb2dc652d3c"/></dir></dir></dir></dir></target></contents>
|
16 |
<compatible/>
|
17 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
18 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>FreePOP_Theme</name>
|
4 |
+
<version>1.5.0</version>
|
5 |
<stability>stable</stability>
|
6 |
<license>Free License</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Free POP is a simple, nice and clear theme for magento ecommerce site.</summary>
|
10 |
<description>Free POP is a simple, nice and clear theme for magento ecommerce site. It is suite for many kind of webshop as CD, DVD, Music, Movie...More important, it is upgraded by our experienced experts to fully compatible with all Magento versions. Furthermore, it is easy to work with and edit.</description>
|
11 |
+
<notes> add smart menu and easy tesimonial extension</notes>
|
12 |
<authors><author><name>Hai Nguyen</name><user>mageworld</user><email>haint@mage-world.com</email></author></authors>
|
13 |
+
<date>2012-09-12</date>
|
14 |
+
<time>10:33:37</time>
|
15 |
+
<contents><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="freepop"><dir name="layout"><file name="catalog.xml" hash="78a61bd3d773c3552851470f50bdd79d"/><file name="catalogsearch.xml" hash="1abcf6d6a67a04b0981d9de697ac36ca"/><file name="cms.xml" hash="74a54f6cccc19fb611c1b3bc52b46653"/><file name="directory.xml" hash="324f0d988943cfe039da8a1cbe038e7f"/><file name="easybanner.xml" hash="7af9cdc695465da4d58f254c8e163266"/><file name="newsletter.xml" hash="412f7afddb6e01eb8b40fa4425e25dc7"/><file name="page.xml" hash="3392c3162eb8860738d2da6303791dd0"/><file name="smartmenu.xml" hash="fb3158530d0ea81296c29b9d2ae1eac1"/><file name="tag.xml" hash="d8d238c3c74a6804ea74162beb33fde9"/><file name="testimonial.xml" hash="a6901635b143d949f82014bb56a09f12"/></dir><dir name="template"><dir name="catalog"><dir name="category"><file name="view.phtml" hash="a586b24e651b2e2e40b785efbbbe783b"/></dir><dir name="navigation"><file name="left.phtml" hash="3ec84f187ebbea1e9950731a9c1df65c"/><file name="left_main.phtml" hash="dac8e158cbeb0b61bd8daa15a6a60f26"/><file name="top.phtml" hash="9f0f42e6e2e22d1927caaf95896a8041"/></dir><dir name="product"><dir name="list"><file name="upsell.phtml" hash="b2184773a2a45372d452fa3b96896345"/></dir><file name="list.phtml" hash="9662f1cd4977becc034b65679fb90804"/><file name="newmovies.phtml" hash="7cc5059bedc7ef0647be971060e77ce3"/><file name="newmusic.phtml" hash="96e67ae921eb4a9eadee6b5148c2e017"/><file name="view.phtml" hash="bd73ba93d97b93f8cbc31fb8987fbd6f"/></dir></dir><dir name="cms"><file name="important.phtml" hash="452747b0272ea29fc7c7e4d99ffc0ab4"/></dir><dir name="easybanner"><file name="cycleslider.phtml" hash="ef6278bf68b5550bb5a8e26b81c5ea52"/><file name="galleryview.phtml" hash="de416012650ea23b82066946bbe55851"/><file name="simpleslider.phtml" hash="4ed695164cfd72096daeee0a4641c9f5"/><file name="staticview.phtml" hash="879f2179dcbed5e4c1192bef82ff8950"/></dir><dir name="page"><file name="1column.phtml" hash="1ff69c3d247359d3df640f70180cce26"/><file name="2columns-left.phtml" hash="bc2f2a72cce1868de2a2e98f71387958"/><file name="2columns-right.phtml" hash="f711a2f2cadd7ff07c09e29b76a75d1e"/><file name="3columns.phtml" hash="6161e3644029b6b230b0ff01c4888bff"/><dir name="html"><file name="breadcrumbs.phtml" hash="fdfa76871d3340eb6e1c59990a7d07b1"/><file name="footer.phtml" hash="5af10e8508edd3d6b3042de6f1604341"/><file name="head.phtml" hash="52bae233fd72cdb897aad7797a6aee0b"/><file name="header.phtml" hash="bdbb8782647289b54dda69f2aadae65c"/></dir></dir><dir name="smartmenu"><file name="accordion_left.phtml" hash="67ae4a4f31515ddf74bdff5d42756c35"/><file name="accordion_right.phtml" hash="b62c87f709a3647368ba5e17a32026ff"/><file name="dropdown_left.phtml" hash="ce1d8c161548eca0cdd29f3298907e45"/><file name="dropdown_right.phtml" hash="296f52377b5b18df114aa2658eaa4b57"/><file name="shopby.phtml" hash="91bd19af11ef1bd5d9f1ee085cfd2742"/></dir><dir name="testimonial"><file name="list.phtml" hash="85e9d06e615b75f83732680e1049e718"/><file name="list_nopaging.phtml" hash="3213654546f964005bb61b2a04d75187"/><file name="pager.phtml" hash="2f05604ed00f0d325941a6da12c895a6"/><file name="submit.phtml" hash="72396f347bcf13f09b4e6dd3c7b08f13"/><file name="testimonial.phtml" hash="7d3e45b6cf6924c42e7226670032c1e6"/><file name="testimonial_advance.phtml" hash="0cf1266479411bf17f951f8607574d50"/><file name="view.phtml" hash="3b8d68f50ee1308253fb2d2421261176"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="freepop"><dir name="css"><file name="easybanner.css" hash="5e597e8a05bbc398a1cf1cbfb13d3b72"/><file name="print.css" hash="fa66393ff642ef7184cd51949f30e397"/><file name="styles-ie.css" hash="c967437588a96041773583e1bdc1aa2e"/><file name="styles.css" hash="2770abbd09fdbfdcb70a5d6a034c287b"/><dir name="testimonial"><dir name="images"><file name="Thumbs.db" hash="9f77d390f12320a4b8124e8a89b0046d"/><file name="bkg_toolbar2.gif" hash="a884778e40311616646056c8eabd284d"/><file name="pager_bg.gif" hash="e6967716de8c4bc4c96c206a0dbd2c5f"/></dir><file name="style.css" hash="14952b9ca439a650889dace872c8a414"/></dir></dir><file name="favicon.ico" hash="88733ee53676a47fc354a61c32516e82"/><dir name="images"><file name="Thumbs.db" hash="5c59a18de83dd719dcc3ff56a5a88fe0"/><file name="Untitled-1_03.gif" hash="36d912bafee170e04bcc2a7d12dafc5c"/><file name="addto.gif" hash="eefe51ea8b6ffc70148e8ee888390b38"/><file name="banner_catalogy.gif" hash="99534c874b954ae31a70a9330c8183f7"/><file name="bg.gif" hash="68a674fe71609dc8ebee287ea631e65d"/><file name="bg_active_banner.gif" hash="d5e594ce3a585bf53551b5cc9ded78bd"/><file name="bg_banner.gif" hash="fe550cbaabfcf840b72a34b1ebc17fd2"/><file name="bg_block_content.gif" hash="dd4393951d4462559e37f2346cf1a093"/><file name="bg_buttom.gif" hash="fd63f4a63860984c25825d949a9603eb"/><file name="bg_button.gif" hash="c92735d4f8e954a75966a4bb9cfc7073"/><file name="bg_button_all.gif" hash="2ebcf978e3a31e9351ff4177c6673aa2"/><file name="bg_compare_11.gif" hash="fa32a899b9cf2ab738ef2eb634e0d87e"/><file name="bg_content_03.gif" hash="ad38e78e429db89433665e7a31d7bf51"/><file name="bg_linav.gif" hash="1c533405aad78b65d345ab5fd71f3fad"/><file name="bg_new.gif" hash="351ff5ab3bac4963389febf538a00a76"/><file name="bg_select_banner.gif" hash="3cc13a43fbd1630672dcefdf2f1d7d4c"/><file name="bg_shopby.gif" hash="2d7539059d67de04ad5e2817405911ab"/><file name="bg_title_03.gif" hash="3e01f219c3f09c940f31bb5b9ca0f192"/><file name="bg_title_03.png" hash="a5c1e5e3c74ce04158e979f0aeb42a16"/><file name="bg_title_catagy.gif" hash="1820ebf6718a52bcda4f5d0af99ba670"/><file name="bg_title_product.gif" hash="b7292af3475fdf182811d18d5d14bb53"/><file name="bg_top_main.gif" hash="b8632a54062d67986b8c62ab68e72540"/><file name="bkg_block-currency.png" hash="668f31380d9a1c671d3fdc10a68da1bd"/><file name="bkg_block-layered-dd.gif" hash="55a0d80cb0d780dcc68cf303429d7679"/><file name="bkg_block-layered-dt.png" hash="c751e031a8894fa53d1215e3a783692d"/><file name="bkg_collapse-gm.gif" hash="37418f23e65006dcfde07ce9b249e057"/><file name="bkg_collapse.gif" hash="2333c68e38163ed4656da82b9bcf362b"/><file name="bkg_divider1.gif" hash="260ebae91ffb1b7c663906b29a069925"/><file name="bkg_grand-total.gif" hash="10f1c3d82d78170706fa3e9c4baa7e04"/><file name="bkg_grid.gif" hash="a6f64fedbac51fb1b86184cd488cc4e6"/><file name="bkg_main1.gif" hash="6fbdc3f4972e3ab26bab39e0c38e68f6"/><file name="bkg_nav2.png" hash="1ebdd2e55d5915c8cb60536c0272990c"/><file name="bkg_opc-title-off.gif" hash="f69b40b5331ab3760f54d038daf287eb"/><file name="bkg_pipe1.gif" hash="15f1390defe198c1de726a42d1b6c1d6"/><file name="bkg_pipe2.gif" hash="7da64eefaf4da3855ab6ee76dbced0c2"/><file name="bkg_pipe3.gif" hash="11bfac1e590f0c77fb12f37d7f05cd3c"/><file name="bkg_product_collateral.gif" hash="1d4d6b22e5108aefae52709d3934f397"/><file name="bkg_products-grid3.gif" hash="6041e18c5bfb14bc17f942cebaffdb02"/><file name="bkg_rating.gif" hash="0a8777c815350ddf1e316a537ad0c335"/><file name="bkg_sp-methods.gif" hash="17d68b5449adaa87dafc62ae0afa1b9a"/><file name="bkg_tfoot.gif" hash="da2970eac0a22c850b19ee3680475d51"/><file name="bkg_th-v.gif" hash="b0d17555dfc6060941e0c067718189df"/><file name="bkg_th.gif" hash="f249911b08f2822fc0b561b7f98575d2"/><file name="bkg_toolbar.gif" hash="d5533203748d8e0cd4046ba557253271"/><file name="bkg_toolbar2.gif" hash="a884778e40311616646056c8eabd284d"/><file name="bottom_box_06.gif" hash="4e436d94352fa5d894fa24f8de927550"/><file name="bottom_box_06.png" hash="c76aa8af4ce225b0c990067e3cc09846"/><file name="btn_addtocat.png" hash="1d0325923a424a54c9cac11f9b3cbe78"/><file name="btn_checkout.gif" hash="d2060501e14e86c29e28137130e5726e"/><file name="btn_edit.gif" hash="df3565eb4e4d0dc578201df60de54b47"/><file name="btn_edit.png" hash="d65f7c6b4ce2a4ab4aa06f5a08b9a9bd"/><file name="btn_gm-close.gif" hash="346e26eece27449a2f224aef76ae372e"/><file name="btn_google_checkout.gif" hash="843d75249ce05b5d87ca5419f37b1c3b"/><file name="btn_mini_search.gif" hash="856b7ce3bc991482db4b59436ec12829"/><file name="btn_paypal_checkout.gif" hash="6edd61270b7b5632eafad10557129114"/><file name="btn_place_order.gif" hash="d35219f86ae2c983ee1a31557e37b612"/><file name="btn_proceed_to_checkout.gif" hash="4daac687b514fecfd1068539500ac3d7"/><file name="btn_proceed_to_checkout_dis.gif" hash="9e152c01d5d88f690dc52cb62428f3b6"/><file name="btn_remove.gif" hash="56f0362e5c2c958fd34bc508d03c66c2"/><file name="btn_remove2.gif" hash="234bddc4c5878c5ef16407a944824236"/><file name="btn_search.gif" hash="2d93b43c0a1c1182358677661e26a978"/><file name="btn_trash.gif" hash="bcb22f558a0eb32243a2a36645189e9f"/><file name="btn_trash.png" hash="a9e5e6c9c2b77d63d6f749cad0ca3b97"/><file name="btn_window_close.gif" hash="c83f3cbbb2aedfc580dff78d5cfb63ed"/><file name="calendar.gif" hash="b1468e5239504974c689eea5d93f86d4"/><dir name="catalog"><dir name="product"><dir name="placeholder"><file name="image.jpg" hash="097ab8a3051bc037ea3de0e17f440540"/><file name="small_image.jpg" hash="f825d16f97a640453553c79c48ebaa73"/><file name="thumbnail.jpg" hash="b2b682d28a08a748a73d2cda70ab5a57"/></dir></dir></dir><file name="center_head_06.gif" hash="5547b3d762341b870f75561f23bb7bf3"/><file name="currency_switcher_bg.gif" hash="2158d744ff03f418fbf7553c72fd82c4"/><file name="cvv.gif" hash="ed0f392004a405466291071a760b285d"/><file name="cvv.jpg" hash="e27210d810bbab732935d9410936ef87"/><file name="fam_book_open.png" hash="0ba89b9fbe7e88d4c6896ed0a1f495aa"/><file name="free_01.gif" hash="63f002481b624169d524fcfba8c7d111"/><file name="free_shipping_callout.jpg" hash="cbf2e494ef7ca50acf8826321d739559"/><file name="grid-cal.gif" hash="b1468e5239504974c689eea5d93f86d4"/><file name="head_05.gif" hash="d095688707b620157946bfc9b5796eff"/><file name="header_bg.gif" hash="7f211eedbe93388614d6e777b072ccf5"/><file name="home_07.gif" hash="9eb840c94a9a54491de7cbb4ca59ded8"/><file name="home_left_callout.jpg" hash="ee99a5586cf52e85c986d1275958a7da"/><file name="home_main_callout.jpg" hash="e6d1c119d5b24a5916fe394cb4b5cdc3"/><file name="i_arrow-top.gif" hash="3dbb0584e8eb1d96cc3d3c40c17d7aaf"/><file name="i_asc_arrow.gif" hash="40aa554212d6a1f60593c27d78d85fa3"/><file name="i_availability_only.gif" hash="bca1f00a50864171ad98317b778e869c"/><file name="i_availability_only_arrow.gif" hash="0cf32b72fefc94b89b74e4f3f02c2e93"/><file name="i_block-cart.gif" hash="cc19e21f9c89b70cc10354ff588ca8ab"/><file name="i_block-currency.gif" hash="471a2c163b7e9e82b9c1b1d86e2126e9"/><file name="i_block-list.gif" hash="fe8424127ecbe4b0d893bcf6f253dc1a"/><file name="i_block-list.png" hash="9e2d9b6438a82f45ba20649f5b0b74b8"/><file name="i_block-poll.gif" hash="52d778dddbf48b8d04226bee9370a7ef"/><file name="i_block-related.gif" hash="4e277173b6372b1a90b0f19e0388ad54"/><file name="i_block-subscribe.gif" hash="9e5fee06a543742045118a95f2debcb8"/><file name="i_block-tags.gif" hash="67d1255c2c3e9ed1a5c845f8d4e4a3ba"/><file name="i_block-tags.png" hash="b4dce30e69939e8cf367eb39700e9b43"/><file name="i_block-viewed.gif" hash="67d1255c2c3e9ed1a5c845f8d4e4a3ba"/><file name="i_block-viewed.png" hash="2b7b810190f25f3393248c1356b4c499"/><file name="i_block-wishlist.gif" hash="8f8cda89ca20ba4a9b2f8c91f73fdff9"/><file name="i_block-wishlist.png" hash="68c3111af76574f32222db587de5ea47"/><file name="i_desc_arrow.gif" hash="92fd194bfae4ce5ae3354e1e47d7ac7d"/><file name="i_discount.gif" hash="908d44da90de5e54185764d093bbdb77"/><file name="i_folder-table.gif" hash="bf006ddb591d8ac95d2e895bf2fdbc8d"/><file name="i_ma-info.gif" hash="91259557447ee80eb1110fe0c85cb3b5"/><file name="i_ma-reviews.gif" hash="859c97695ec396c0b284a0c3c7c416ad"/><file name="i_ma-tags.gif" hash="1e83e3b0b677c92b3aa8a252268f7b86"/><file name="i_msg-error.gif" hash="e4f28607f075a105e53fa3113d84bd26"/><file name="i_msg-note.gif" hash="e774ee481a2820789c1a77112377c4e0"/><file name="i_msg-success.gif" hash="834dfafd5f8b44c4b24a4c00add56fcf"/><file name="i_notice.gif" hash="ebd56dc80b8346e10e93628bc0e6c372"/><file name="i_page1.gif" hash="704f7d4eccbdf9cabbad7770f18856ff"/><file name="i_page2.gif" hash="57a04ca584e05e28dc94c7e68f0af62e"/><file name="i_pager-next.gif" hash="ed4d6640624c2b6edeab4c212314bd6d"/><file name="i_pager-prev.gif" hash="75973b020105dccbaf34e49d7852552d"/><file name="i_print.gif" hash="0aed138181495642e9ab29e55d194d40"/><file name="i_rss-big.png" hash="6cf70e7c52a3f3d7b833ccadb041a555"/><file name="i_rss.gif" hash="e5bbc388d818c142868b4a1df0b48793"/><file name="i_search_criteria.gif" hash="cf67b9cc5c311ae3f99e68cd29ae17be"/><file name="i_shipping.gif" hash="91a0d2cc2eb2391f90ec8a75c04b3183"/><file name="i_tag_add.gif" hash="a736baa992aa55b6fb71e8742a04dc82"/><file name="i_tier.gif" hash="c5189e25afeb7c1a8c4902a42832593e"/><file name="i_type_grid.gif" hash="a1e5d8ac36fb2891ea16e729b95c552c"/><file name="i_type_list.gif" hash="61333d383ec142b8d270abe77324aa5d"/><file name="icon_01.png" hash="e3297d4359e002c9639b6c532b769587"/><file name="icon_all.png" hash="1661ec257eacf2c6be0a5433f6a0a0ed"/><file name="icon_basket.gif" hash="429741bf7dbf5ed6aac49e1dcf6ef456"/><file name="icon_newspaper.gif" hash="57ce4a0cd0f97589c07237f24c460cda"/><file name="icon_table.gif" hash="3ef1946ad28582455b5aa00c0962aca1"/><file name="left_head.gif" hash="85afe5405acaa0023f109e9beffd5180"/><file name="logo.gif" hash="48b7eb03807fdf80bdfb19b872cf84b8"/><file name="logo.png" hash="139963c29d9941a17ed0cc1c7c8421b4"/><file name="logo_email.gif" hash="8de347192e0524cff7a69e4020182dbd"/><file name="logo_print.gif" hash="8de347192e0524cff7a69e4020182dbd"/><file name="magnifier_handle.gif" hash="238fbdd7959f517db11c6f57ee4daaf4"/><file name="map_popup_arrow.gif" hash="6383b40a9e7bd3c95260bef4fbb1b163"/><dir name="media"><file name="404_callout1.jpg" hash="834e53a03e2921a2fd3c135c0c7189df"/><file name="404_callout2.jpg" hash="016984b4a1579df34147f9407098db73"/><file name="about_us_img.jpg" hash="726f36dd75b5a709a1a14acab1660188"/><file name="best_selling_img01.jpg" hash="5e7337a4061a636df8ee4bf979a092ac"/><file name="best_selling_img02.jpg" hash="b9a49c0964938ec72fb834cb166b9352"/><file name="best_selling_img03.jpg" hash="e3581487fb4589baecc553f2ce8d5247"/><file name="best_selling_img04.jpg" hash="7e59bf99f5f813e327595c52d3320174"/><file name="best_selling_img05.jpg" hash="e396892daec7ffcf7244082b3e596911"/><file name="best_selling_img06.jpg" hash="2702839637efbe0fd0a4bad41cd6a551"/><file name="cell_phone_landing_banner1.jpg" hash="b25562360fc470f1091ca7ea014a3290"/><file name="col_left_callout.jpg" hash="4102087151d05c037b836bc2976b3d59"/><file name="col_right_callout.jpg" hash="efee9288d535fad301b177abefbc79ff"/><file name="electronics_cellphones.jpg" hash="8f6badbc32ce806c6109c788df6ef5e9"/><file name="electronics_digitalcameras.jpg" hash="953b8d7db6f0bdcd53b1d6b1386962b9"/><file name="electronics_laptops.jpg" hash="e050e92d72000e6bdc763a7b5888ec8a"/><file name="furniture_callout_spot.jpg" hash="28edc7d72486ab2362324995550d87af"/><file name="furnitures_bed_room.jpg" hash="b8616c5bffc23a92d2a1c97dae57b262"/><file name="furnitures_living_room.jpg" hash="2663737f3997cb1a49ce24d07dc8aefb"/><file name="head_electronics_cellphones.gif" hash="a69425966444ea597fb7c629114d5165"/><file name="head_electronics_digicamera.gif" hash="bde3cec3fc16b2d0ae57e7783eb00652"/><file name="head_electronics_laptops.gif" hash="b2c55387ffa92277315bdedeb4cb9b8f"/><file name="laptop_callout_mid1.jpg" hash="4ffb50bd3b7b32a78fd059b1571c202e"/><file name="laptop_callout_mid2.jpg" hash="662cf3881b06b090e9500496b19b03e4"/><file name="laptop_callout_mid3.jpg" hash="22aa71ecfe0aa9b6936a1eddb62d889e"/><file name="laptop_callout_spot.jpg" hash="2e469d1bd871355eaef6076487a973db"/><file name="shirts_landing_banner1.jpg" hash="4acc8620b009d835e5c25587671ea25d"/></dir><file name="menu_06.gif" hash="c93e92f9d709215cdde91a024f738343"/><file name="middle_box_03.gif" hash="a4d0bb64ed3925535b06645ba723bd5e"/><file name="narrow_by_set.gif" hash="08663578a21d6a59ba308a7a177658af"/><file name="new_movies.gif" hash="7544a602f1528f0785e09931ba7be888"/><file name="new_music.gif" hash="4727b360498d62a435ff44953e57b310"/><file name="np_cart_thumb.gif" hash="e9fdd943e0947e15f0638506f477e358"/><file name="np_more_img.gif" hash="ace357bfe3e81ffb62137cd5b25ae5e1"/><file name="np_product_main.gif" hash="d0cccda76de50efa025215ce85dacb1c"/><file name="np_thumb.gif" hash="e46270c89358ecc8341d1565c14644b8"/><file name="np_thumb2.gif" hash="8502866cdabc5c74aca7d7bd32a06a03"/><file name="opc-ajax-loader.gif" hash="e805ea7eca1f34c75ba0f93780d32d38"/><file name="pager_arrow_left.gif" hash="75973b020105dccbaf34e49d7852552d"/><file name="pager_arrow_right.gif" hash="cd47445a79a92502c8f7ec0eb70938ef"/><file name="pager_bg.gif" hash="22fc6c7ed4c93c1a1173006459f08172"/><file name="ph_callout_left_rebel.jpg" hash="0ce8ad0026d8b8a83ed7acdf6209129b"/><file name="ph_callout_left_top.gif" hash="f17a036d75e5065eb76bafbb2c8ad7ff"/><file name="product_03.gif" hash="794c137cd5bd90dc230700683bb56aaa"/><file name="product_btn.gif" hash="2c74cea0fb1618878921b6dc43bf6efd"/><file name="product_zoom_overlay_magnif.gif" hash="83834893e162221d6d9257fe67847370"/><file name="right_head.gif" hash="4f5f4b7fb7d2e753f321b53ca97215d7"/><file name="search.gif" hash="a1ef27f4afad18cc5583f1df973efa7d"/><file name="shop_access_pipe.gif" hash="15f1390defe198c1de726a42d1b6c1d6"/><file name="shopby.gif" hash="42467606f001e86eef4c20db9a13f4ec"/><file name="slider_bg.gif" hash="87bc1b46d87de4f6252c7216216627c3"/><file name="slider_btn_zoom_in.gif" hash="ef0fc67f77f30827ee67f4e744b60781"/><file name="slider_btn_zoom_out.gif" hash="68b3d1c28dc5aec4f6b64d70a6996b6f"/><file name="spacer.gif" hash="df3e567d6f16d040326c7a0ea29a4f41"/><dir name="testimonial"><file name="Thumbs.db" hash="cdcd63129d9db47d0b7e3d5273c387fb"/><file name="bottom.jpg" hash="23ee406e5cea791e3121d39edd6c4e96"/><file name="bottom_r.jpg" hash="07868b4e7eb4c59c1c8f313ba7e7026c"/><file name="div_bt.gif" hash="0db8809ac332cba3f374c2b657cedcc8"/><file name="div_md.gif" hash="443663162116ea978c986574a56ba0ab"/><file name="div_top.gif" hash="a5d32de4a0ffed1b5bdf781105679845"/><file name="icon_bt.gif" hash="62a8ee2b864fe889e9273fc210531793"/><file name="icon_top.gif" hash="39abed11ee7fee32867359a4e0a74132"/><file name="left.jpg" hash="88d5779d27fa0359e91954dbdf8bc275"/><file name="right.jpg" hash="c073553e1391dbcdc51077a377e15b21"/><file name="top.jpg" hash="c8a53aad1d4c94aff997c2df4c8fbb7e"/><file name="top_left.jpg" hash="ba33717eb30dc9de1432f49388ef980a"/><file name="top_right.jpg" hash="b4668a39d957e3c9c0aa599bb1ba65da"/></dir><file name="top_box_03.gif" hash="bc11eeff056a920bc106ea9538c4583d"/><file name="validation_advice_bg.gif" hash="b85432906de8985a8b14eeb2dc652d3c"/></dir><dir name="js"><dir name="easybanner"><file name="easySlider1.5.js" hash="76cfc0e54ceaba7b0fedc6b6d556b0b2"/><file name="jquery.cycle.js" hash="25da3ed200c674c142afa5bef31dc6d7"/><file name="jquery.lightbox-0.5.js" hash="e8d2b95fa523157703abea5cc45451a2"/><file name="jquery.msAccordion.js" hash="0be5a6d56f981985bbc2e77ee0249df6"/><file name="plugins.init.js" hash="fc56267fd4599da5d6fd8e63c4d6d89e"/></dir><dir name="galleryview"><file name="jquery.easing.1.3.js" hash="6516449ed5089677ed3d7e2f11fc8942"/><file name="jquery.galleryview-1.1.js" hash="e4605eee9bb001c4417ed7105d8ddd21"/><file name="jquery.timers-1.1.2.js" hash="d71f25d56f3c462cc726dd57074b6018"/><dir name="themes"><dir name="dark"><file name="Thumbs.db" hash="d3cf4286629220fcdcc0416dce0cf38d"/><file name="next.png" hash="47ec5649c151404235a33d8bd28061e6"/><file name="panel-nav-next.png" hash="a49f579652343060f9fbf5bbc2555969"/><file name="panel-nav-prev.png" hash="67d503ad26afe4dad5e441c1c1db3a29"/><file name="pointer-down.png" hash="031b17c5f93af8e3394f6fde1b21390c"/><file name="pointer.png" hash="ae31b2952934f179a24758ac8984f6d7"/><file name="prev.png" hash="968316a1226c46c0d3bccec7fd2b79cf"/></dir><dir name="light"><file name="next.png" hash="1b72d4cb5935cec2ccba9d3578249142"/><file name="panel-nav-next.png" hash="f92a953488e2214e76945b395711dd88"/><file name="panel-nav-prev.png" hash="9fe9f9bc7fc0ca95a4d9871032de0d44"/><file name="pointer-down.png" hash="1db72a84729239a7388bc4b5fc3181d0"/><file name="pointer.png" hash="2a0edec8efcc35470e2f4e0e3f7ecbaf"/><file name="prev.png" hash="baa5b315418049648c2df71ace1d02df"/></dir><file name=".DS_Store" hash="362a79afd27257ca596702151f1a99ed"/></dir></dir><dir name="testimonial"><file name="jquery-1.3.2.min.js" hash="bb381e2d19d8eace86b34d20759491a5"/><file name="jquery.cycle.js" hash="25da3ed200c674c142afa5bef31dc6d7"/><file name="jquery_noconflict.js" hash="afdd9b4ecb226d898fe655136f849752"/></dir></dir><dir name="smartmenu"><dir name="css"><file name="smartmenu.css" hash="46ba51aa011469c2ec527aa45ef64708"/><file name="superfish-navbar.css" hash="61df71272322d300d10d5295e9d5b5ef"/><file name="superfish-vertical.css" hash="5be27fe96f3bf7b565b6312af2af51f3"/><file name="superfish.css" hash="5ecd0f8612f0299f114998e44286ab42"/></dir><dir name="images"><file name="Thumbs.db" hash="acc737e10c1216553ee418d6cdb55282"/><file name="arrow-cat-active.gif" hash="ec6021e66c4f7a44c3b096aead0906d4"/><file name="arrow-cat-active.png" hash="6de324ad3ad658ad361fc28d110b38ae"/><file name="arrow-cat-hover.gif" hash="917e50737a9a3250b083aafc3e21aa46"/><file name="arrow-cat-hover.png" hash="2911edcc30692463cd4a496fc3704451"/><file name="arrow-cat.gif" hash="efa81c9993c25e98a629f0a3ec90eec3"/><file name="arrow-cat.png" hash="eeaa932058b9cd0520e1abdf1fe0ce3b"/><file name="arrows-ffffff.png" hash="d0fcef6b2d88dcb1a39f3128214cd62a"/><file name="base_mini_head_bg.gif" hash="f8c1f130ad69464fe7aff2f589b2ec75"/><file name="bg-cate-active.gif" hash="e47cf1571eb73521e9c8855c8ad155d7"/><file name="bg-cate-active2.gif" hash="86567e3470983901c948411ded90ae60"/><file name="bg-li.gif" hash="dcad8070b6a20bf9aabeaf5f10482d14"/><file name="bg_block_content.gif" hash="dd4393951d4462559e37f2346cf1a093"/><file name="bg_listmenu.png" hash="102238ec066059956646d3489052f5b8"/><file name="bg_listmenu2.png" hash="441a453f5b570df20467193c1fb39e4b"/><file name="icon.gif" hash="0c269ee4cf132a6a65dd79b9dc458330"/><file name="icon.png" hash="e51f049f119cf4bede8a6c0d17789943"/><file name="icon_01.gif" hash="1b1a47b31aca979693789156200d922b"/><file name="layered_nav_head_bg.gif" hash="999526513f1214ba3ef6259b5396829f"/><file name="layered_nav_narrowed_category_heading.gif" hash="607167f198572e83a0e728b6b9383a70"/><file name="shadow.png" hash="f1d103b9df220b6bc49011a7141dd398"/></dir><dir name="js"><file name="accordion.js" hash="164b2511f5b91fbb87bde7ff785f7626"/><file name="accordion_menu.js" hash="e6581a5079267e1ae5597ed50d163305"/><file name="hoverIntent.js" hash="1a27531c68df91ec891a075b0832c2e8"/><file name="jquery-accordion-menu.js" hash="309ddd51e74777780cbefbc2e62a0364"/><file name="jquery.bgiframe.min.js" hash="6d3777ab2be264f2cd5424af32a15841"/><file name="jquery.js" hash="767eb0e7e34003d6252c1368defbca79"/><file name="superfish.js" hash="8c8070ba6a911bae7047f29e383da334"/><file name="supersubs.js" hash="4841b3d4b5eca1c3130933be83fbde4c"/></dir></dir></dir></dir></dir></target></contents>
|
16 |
<compatible/>
|
17 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
18 |
</package>
|
skin/frontend/default/freepop/css/easybanner.css
ADDED
@@ -0,0 +1,180 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* Homepage Layout
|
2 |
+
--------------------------------------------------------------------------------------- */
|
3 |
+
|
4 |
+
.homepage_content { width: 816px; padding:0px; height: 317px; background:none; overflow: hidden; position: relative;}
|
5 |
+
.homepage_content img { border: none; margin: 0; padding: 0; width: 816px; height: 317px;}
|
6 |
+
#divMainRotatorNav { position:absolute; bottom:0px; left:8px; z-index:99; }
|
7 |
+
#divMainRotatorNav a {margin: 0 0 0 4px;padding:0;display:block;text-decoration: none;color: #888888;font-family:Arial, Helvetica, sans-serif; font-size:12px;border:5px solid #420807;width:87px;height:50px;display:block;background-color:#000;
|
8 |
+
/* for IE */ filter:alpha(opacity=50);
|
9 |
+
/* CSS3 standard */
|
10 |
+
opacity:0.6;}
|
11 |
+
#divMainRotatorNav a:hover { text-decoration: none;color: #ffffff;border:5px solid #7b1616;background-color:#000;
|
12 |
+
/* for IE */
|
13 |
+
filter:alpha(opacity=100);
|
14 |
+
/* CSS3 standard */
|
15 |
+
opacity:1.0;
|
16 |
+
}
|
17 |
+
#divMainRotatorNav a.activeSlide {
|
18 |
+
text-decoration: none;color: #ffffff;border:5px solid #7b1616;background-color:#000;
|
19 |
+
/* for IE */
|
20 |
+
filter:alpha(opacity=100);
|
21 |
+
/* CSS3 standard */
|
22 |
+
opacity:1.0;
|
23 |
+
}
|
24 |
+
#divMainRotatorNav a:focus { outline: none; }
|
25 |
+
.home_events_row {overflow: hidden;width: 100%;border-bottom:2px solid #dddddd;padding: 14px 0 9px 0;}
|
26 |
+
.home_events_row h4 {float: left; display:inline;font-size: 3.8em;color: #aaaaaa; margin-left: 12px;line-height: 1em;padding: 0;}
|
27 |
+
.home_events_content {float: right;display: inline;width: 84%;}
|
28 |
+
.home_events_content h3 { font-size: 1.4em; }
|
29 |
+
.home_events_content p { margin: 1px 0 0 0; }
|
30 |
+
|
31 |
+
.aaa{position:relative;width:100%;margin-bottom:35px;}
|
32 |
+
.bbb{top:-14px;z-index:1000;width:100%;position:absolute;}
|
33 |
+
/*slide*/
|
34 |
+
|
35 |
+
.nav1 { margin: 0px; position: relative }
|
36 |
+
.nav1 li { float: left; list-style: none; line-height: 24px;}
|
37 |
+
.nav1 a { padding: 0px 5px; text-decoration: none; color: #fff; font-size: 12px; font-family: arial; background:url(../images/li-hover.jpg) no-repeat; width:7px; height:22px; font-weight: bold; }
|
38 |
+
.nav1 a.activeSlide {color: #FF920A; font-size: 12px; font-family: arial; font-weight: bold; background:url(../images/li-active.jpg) no-repeat;}
|
39 |
+
.nav1 a:focus { outline: none; }
|
40 |
+
.intro_barner{height:200px;}
|
41 |
+
.nav1 a span{ display: none;}
|
42 |
+
|
43 |
+
#demos {
|
44 |
+
/*clear:both;*/
|
45 |
+
width:100%; float: left;
|
46 |
+
}
|
47 |
+
.so {
|
48 |
+
background:transparent url(../images/sliderbanner/tab_number.png) no-repeat;
|
49 |
+
height:42px;
|
50 |
+
margin:auto;
|
51 |
+
text-align:left;
|
52 |
+
width:100%;
|
53 |
+
display: block;
|
54 |
+
padding-top:17px;
|
55 |
+
}
|
56 |
+
.so a{ float: left; line-height: 24px;}
|
57 |
+
.so ul{ float: left;}
|
58 |
+
.prev img{ padding-top: 3px; padding-left:25px;}
|
59 |
+
.next img{ padding-top: 4px;}
|
60 |
+
.slideshow{overflow: hidden;height: 310px;}
|
61 |
+
|
62 |
+
#demos h2{ padding: 0px; margin: 0px; width: 597px; float: left;}
|
63 |
+
.Profitez{ overflow: hidden; width: 597px; float: left;}
|
64 |
+
.green_intro{ height: 236px !important;}
|
65 |
+
.so a.link-more{
|
66 |
+
color: #F9D428;
|
67 |
+
font-size: 14px;
|
68 |
+
text-decoration: none;
|
69 |
+
float: right;
|
70 |
+
text-align: right;
|
71 |
+
padding-right: 20px;
|
72 |
+
}
|
73 |
+
.so a:hover.link-more{
|
74 |
+
color: #F9D428;
|
75 |
+
font-size: 14px;
|
76 |
+
text-decoration: underline;
|
77 |
+
float: right;
|
78 |
+
text-align: right;
|
79 |
+
padding-right: 20px;
|
80 |
+
}
|
81 |
+
#pauseButton{
|
82 |
+
padding-top: 4px;
|
83 |
+
padding-left: 5px;
|
84 |
+
}
|
85 |
+
|
86 |
+
|
87 |
+
|
88 |
+
/* Easy SimpleSlider */
|
89 |
+
.divSimpleSliderRotate { position:absolute; bottom:-42px; left:0; z-index:99; width:100%; text-align:center; height:42px;}
|
90 |
+
.divSimpleSliderRotate a {
|
91 |
+
margin: 0 4px 0 4px;
|
92 |
+
padding:0;
|
93 |
+
background:url(../images/bg_select_banner.gif) center center no-repeat;
|
94 |
+
text-decoration: none;
|
95 |
+
font-size:0;
|
96 |
+
width:11px;
|
97 |
+
height:11px;
|
98 |
+
display:inline-block;
|
99 |
+
}
|
100 |
+
.divSimpleSliderRotate a:hover {
|
101 |
+
background:url(../images/bg_active_banner.gif) center center no-repeat;
|
102 |
+
text-decoration: none;
|
103 |
+
width:11px;
|
104 |
+
height:11px;
|
105 |
+
display:inline-block;
|
106 |
+
}
|
107 |
+
.divSimpleSliderRotate a.activeSlide {
|
108 |
+
background:url(../images/bg_active_banner.gif) center center no-repeat;
|
109 |
+
text-decoration: none;
|
110 |
+
width:11px;
|
111 |
+
height:11px;
|
112 |
+
display:inline-block;
|
113 |
+
}
|
114 |
+
.divSimpleSliderRotate a:focus { outline: none; }
|
115 |
+
/* Easy SimpleSlider */
|
116 |
+
|
117 |
+
|
118 |
+
|
119 |
+
/* Easy Slider */
|
120 |
+
#content_slider{
|
121 |
+
position:relative;
|
122 |
+
margin:0px 45px;
|
123 |
+
}
|
124 |
+
#slider{}
|
125 |
+
#slider ul, #slider li{
|
126 |
+
margin:0;
|
127 |
+
padding:0;
|
128 |
+
list-style:none;
|
129 |
+
}
|
130 |
+
#slider li{
|
131 |
+
/*
|
132 |
+
define width and height of list item (slide)
|
133 |
+
entire slider area will adjust according to the parameters provided here
|
134 |
+
*/
|
135 |
+
width:856px;
|
136 |
+
height:241px;
|
137 |
+
overflow:hidden;
|
138 |
+
}
|
139 |
+
#prevBtn, #nextBtn{
|
140 |
+
display:block;
|
141 |
+
width:30px;
|
142 |
+
height:77px;
|
143 |
+
position:absolute;
|
144 |
+
left:-30px;
|
145 |
+
top:71px;
|
146 |
+
}
|
147 |
+
#nextBtn{
|
148 |
+
left:856px;
|
149 |
+
}
|
150 |
+
#prevBtn a, #nextBtn a{
|
151 |
+
display:block;
|
152 |
+
width:30px;
|
153 |
+
height:77px;
|
154 |
+
background:url(../images/easyslider/btn_prev.gif) no-repeat 0 0;
|
155 |
+
}
|
156 |
+
#nextBtn a{
|
157 |
+
background:url(../images/easyslider/btn_next.gif) no-repeat 0 0;
|
158 |
+
}
|
159 |
+
.graphic, #prevBtn, #nextBtn {
|
160 |
+
text-indent:-8000px;
|
161 |
+
}
|
162 |
+
/* // Easy Slider */
|
163 |
+
|
164 |
+
/* // accordion Slider */
|
165 |
+
set{border-bottom:1px solid #000}
|
166 |
+
set1{background-color:#C77B3F;}
|
167 |
+
set2{background-color:#FFC732;}
|
168 |
+
set3{background-color:#007C90;}
|
169 |
+
set4{background-color:#AD6F08;}
|
170 |
+
set5{background-color:#387855;}
|
171 |
+
set6{background-color:#8C4B2D;}
|
172 |
+
set7{background-color:#82A668;}
|
173 |
+
|
174 |
+
.accordionWrapper{display:inline-block; background:none; overflow:hidden;}
|
175 |
+
.accordionWrapper img{vertical-align:top; border:0; margin:0; padding:0}
|
176 |
+
.accordionWrapper div{display:inline; float:left; margin:auto;}
|
177 |
+
.accordionWrapper div.title{cursor:pointer;}
|
178 |
+
.accordionWrapper div.content{display:none; margin:0px; padding:0px;}
|
179 |
+
/* // accordion Slider */
|
180 |
+
.banner-container{background:url(../images/bg_banner.gif) center bottom no-repeat; padding-bottom:42px;}
|
skin/frontend/default/freepop/css/styles.css
CHANGED
@@ -376,6 +376,7 @@ p.required { font-size:11px; text-align:right; color:#EB340A; }
|
|
376 |
.pager .pages li { display:inline; margin:0 2px; }
|
377 |
.pager .pages .current {}
|
378 |
.pager .pages li a{color:#3fa4cb;}
|
|
|
379 |
/* Sorter */
|
380 |
.sorter { font-size:11px; background:#fff url(../images/bkg_toolbar2.gif) 0 100% repeat-x; padding:4px 8px; border-top:1px solid #e2e2e2; height:20px;}
|
381 |
.sorter .view-mode { float:left; margin:3px 0 0 12px; }
|
@@ -779,7 +780,7 @@ tr.summary-details-excluded { font-style:italic; }
|
|
779 |
.block-tags .block-title strong { background-image:url(../images/i_block-tags.png); background-position: -1px 5px;}
|
780 |
.block-tags .block-content .tags-list { background:none; border:0; font-size:12px; padding:0;}
|
781 |
.block-tags .block-content a { color:#5f5f5f; text-decoration:underline; }
|
782 |
-
.block-tags .actions { text-align:right; }
|
783 |
.block-tags .actions a { float:none; }
|
784 |
.tag-list-index .tags-list{border-radius:5px; border-color:#C7C7C7;}
|
785 |
/* Block: Subscribe */
|
@@ -836,7 +837,7 @@ tr.summary-details-excluded { font-style:italic; }
|
|
836 |
.col2-right-layout .products-grid { width:632px; margin:0 auto; }
|
837 |
.col1-layout .products-grid { width:790px; margin:0 auto; }
|
838 |
|
839 |
-
.product_head{background: url(../images/new_music.gif) no-repeat; margin-top:
|
840 |
.product_head h2{color:#fff; line-height:29px;}
|
841 |
.addbg{background: url(../images/new_movies.gif) no-repeat;margin-top:15px;}
|
842 |
.product_body{border:1px solid #cbcbcb;border-top:none;background:#fefefe url(../images/bg_new.gif) repeat-x;}
|
@@ -1197,7 +1198,6 @@ p.view_more a{font-weight:normal; font-size:13px; color:#666666;}
|
|
1197 |
/* Product Tags */
|
1198 |
.tags-list { display:block; font-size:13px; border:1px solid #c1c4bc; background:#f8f7f5; padding:10px; }
|
1199 |
.tags-list li { display:inline !important; margin:0 4px 0 0; }
|
1200 |
-
.tags-list li a { font-size:12px !important; }
|
1201 |
.catalogsearch-term-popular .tags-list{border-radius:5px;}
|
1202 |
/* Advanced Search */
|
1203 |
.advanced-search .form-list label { width:160px; padding-right:10px; }
|
376 |
.pager .pages li { display:inline; margin:0 2px; }
|
377 |
.pager .pages .current {}
|
378 |
.pager .pages li a{color:#3fa4cb;}
|
379 |
+
.pager .pages li a.next img{padding:0 !important;}
|
380 |
/* Sorter */
|
381 |
.sorter { font-size:11px; background:#fff url(../images/bkg_toolbar2.gif) 0 100% repeat-x; padding:4px 8px; border-top:1px solid #e2e2e2; height:20px;}
|
382 |
.sorter .view-mode { float:left; margin:3px 0 0 12px; }
|
780 |
.block-tags .block-title strong { background-image:url(../images/i_block-tags.png); background-position: -1px 5px;}
|
781 |
.block-tags .block-content .tags-list { background:none; border:0; font-size:12px; padding:0;}
|
782 |
.block-tags .block-content a { color:#5f5f5f; text-decoration:underline; }
|
783 |
+
.block-tags .actions { text-align:right; padding-top:15px;}
|
784 |
.block-tags .actions a { float:none; }
|
785 |
.tag-list-index .tags-list{border-radius:5px; border-color:#C7C7C7;}
|
786 |
/* Block: Subscribe */
|
837 |
.col2-right-layout .products-grid { width:632px; margin:0 auto; }
|
838 |
.col1-layout .products-grid { width:790px; margin:0 auto; }
|
839 |
|
840 |
+
.product_head{background: url(../images/new_music.gif) no-repeat; margin-top:13px; padding:0 0 0 14px; height:29px;}
|
841 |
.product_head h2{color:#fff; line-height:29px;}
|
842 |
.addbg{background: url(../images/new_movies.gif) no-repeat;margin-top:15px;}
|
843 |
.product_body{border:1px solid #cbcbcb;border-top:none;background:#fefefe url(../images/bg_new.gif) repeat-x;}
|
1198 |
/* Product Tags */
|
1199 |
.tags-list { display:block; font-size:13px; border:1px solid #c1c4bc; background:#f8f7f5; padding:10px; }
|
1200 |
.tags-list li { display:inline !important; margin:0 4px 0 0; }
|
|
|
1201 |
.catalogsearch-term-popular .tags-list{border-radius:5px;}
|
1202 |
/* Advanced Search */
|
1203 |
.advanced-search .form-list label { width:160px; padding-right:10px; }
|
skin/frontend/default/freepop/css/testimonial/images/Thumbs.db
ADDED
Binary file
|
skin/frontend/default/freepop/css/testimonial/images/bkg_toolbar2.gif
ADDED
Binary file
|
skin/frontend/default/freepop/css/testimonial/images/pager_bg.gif
ADDED
Binary file
|
skin/frontend/default/freepop/css/testimonial/style.css
ADDED
@@ -0,0 +1,75 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* */
|
2 |
+
.postWrapper{margin:0;padding:0;margin-bottom:10px;width:100%;}
|
3 |
+
.postWrapper p{font-weight:bold; margin-top:5px;}
|
4 |
+
.postWrapper .content_test{background:#fff;}
|
5 |
+
.div_top{background:url(../../images/testimonial/div_top.gif) no-repeat;height:25px;}
|
6 |
+
.div_middle{background:url(../../images/testimonial/div_md.gif) repeat-y;height:200px;}
|
7 |
+
#slideshow{height:110px;}
|
8 |
+
#slideshow_advance{height:145px;}
|
9 |
+
h2.title_test{color:#444444;font-family:Verdana;font-size:20px;text-align:center;}
|
10 |
+
.icon_bt{text-align:right;}
|
11 |
+
.div_bt{}
|
12 |
+
.div_bt h6{text-align:right; padding-top:0; margin-right:65px; color:#666666; font-size:13px; text-decoration:none; margin:0;}
|
13 |
+
.div_bt h6 a{color:#666666;font-weight:normal; font-size:13px; text-decoration:none;}
|
14 |
+
.div_bt_box h6{text-align:right;padding:10px 0px;margin-right:10px;}
|
15 |
+
.div_bt_box h6 a{color:#444444;font-weight:normal;font-size:11px;text-decoration:underline;}
|
16 |
+
/*create nguyen thi van 30/9/2009*/
|
17 |
+
.div_middle_content{
|
18 |
+
background:url(../../images/testimonial/right.jpg) repeat-y;
|
19 |
+
background-position:right top;
|
20 |
+
padding:0px 10px;
|
21 |
+
}
|
22 |
+
.div_testimonial_L{
|
23 |
+
background:none;
|
24 |
+
}
|
25 |
+
.div_testimonial_L .div_testimonial_R{
|
26 |
+
background:url(../../images/testimonial/right.jpg) repeat-y;
|
27 |
+
background-position:right top;
|
28 |
+
}
|
29 |
+
.div_testimonial_L .div_testimonial_R .div_testimonial_main_B{
|
30 |
+
|
31 |
+
background:url(../../images/testimonial/bottom.jpg) repeat-x;
|
32 |
+
background-position:bottom left;
|
33 |
+
}
|
34 |
+
.div_testimonial_main_C .block-title strong{text-transform:none !important; font-size:14px !important;}
|
35 |
+
#slideshow_advance .postcontents{color:#666666; font-size:12px; line-height:23px; font-weight:normal; margin-top:0;}
|
36 |
+
#slideshow_advance .address_test{color:#666666; font-size:11px; font-weight:bold;}
|
37 |
+
.div_testimonial_L .div_testimonial_R .div_testimonial_main_B .div_testimonial_main_BL{
|
38 |
+
|
39 |
+
|
40 |
+
background:url(../../images/testimonial/bottom_r.jpg) no-repeat;
|
41 |
+
background-position:bottom right;
|
42 |
+
}
|
43 |
+
.div_testimonial_L .div_testimonial_R .div_testimonial_main_B .div_testimonial_main_BL .div_testimonial_main_T{
|
44 |
+
background:url(../../images/testimonial/top.jpg) repeat-x;
|
45 |
+
background-position:top left;
|
46 |
+
}
|
47 |
+
.div_testimonial_L .div_testimonial_R .div_testimonial_main_B .div_testimonial_main_BL .div_testimonial_main_T .div_testimonial_main_TL{
|
48 |
+
background:url(../../images/testimonial/top_left.jpg) no-repeat;
|
49 |
+
background-position:top left;
|
50 |
+
}
|
51 |
+
.div_testimonial_L .div_testimonial_R .div_testimonial_main_B .div_testimonial_main_BL .div_testimonial_main_T .div_testimonial_main_TL .div_testimonial_main_TR{
|
52 |
+
background:url(../../images/testimonial/top_right.jpg) no-repeat;
|
53 |
+
background-position:top right;
|
54 |
+
}
|
55 |
+
|
56 |
+
.div_testimonial_main_C{padding:0;}
|
57 |
+
.div_submit{float:left;}
|
58 |
+
.div_submit_content{float:left;margin-right:10px;}
|
59 |
+
.mw_tt_a-right{ text-align:right !important;}
|
60 |
+
|
61 |
+
table.mw_tt_pager select{ font-size:0.95em; margin:0 3px; }
|
62 |
+
table.mw_tt_pager select { width:50px; }
|
63 |
+
|
64 |
+
table.mw_tt_pager { background:url(images/bkg_toolbar2.gif) repeat-x scroll 0 100% #FFFFFF; font-size:0.95em; width:100%;}
|
65 |
+
table.mw_tt_pager td { border-top:1px solid #DDDDDD; padding:4px 8px; vertical-align:middle; width:33%; }
|
66 |
+
|
67 |
+
table.mw_tt_pager td.pages { padding:4px 0; text-align:center; white-space:nowrap;}
|
68 |
+
table.mw_tt_pager ol, table.mw_tt_pager li { display:inline; }
|
69 |
+
table.mw_tt_pager li { padding:0 2px; }
|
70 |
+
.mw_clear{clear:both;width:100%;font-size:4px;}
|
71 |
+
|
72 |
+
|
73 |
+
|
74 |
+
|
75 |
+
|
skin/frontend/default/freepop/images/bg_active_banner.gif
ADDED
Binary file
|
skin/frontend/default/freepop/images/bg_banner.gif
ADDED
Binary file
|
skin/frontend/default/freepop/images/bg_select_banner.gif
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/Thumbs.db
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/bottom.jpg
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/bottom_r.jpg
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/div_bt.gif
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/div_md.gif
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/div_top.gif
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/icon_bt.gif
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/icon_top.gif
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/left.jpg
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/right.jpg
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/top.jpg
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/top_left.jpg
ADDED
Binary file
|
skin/frontend/default/freepop/images/testimonial/top_right.jpg
ADDED
Binary file
|
skin/frontend/default/freepop/js/easybanner/easySlider1.5.js
ADDED
@@ -0,0 +1,175 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Easy Slider 1.5 - jQuery plugin
|
3 |
+
* written by Alen Grakalic
|
4 |
+
* http://cssglobe.com/post/4004/easy-slider-15-the-easiest-jquery-plugin-for-sliding
|
5 |
+
*
|
6 |
+
* Copyright (c) 2009 Alen Grakalic (http://cssglobe.com)
|
7 |
+
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
8 |
+
* and GPL (GPL-LICENSE.txt) licenses.
|
9 |
+
*
|
10 |
+
* Built for jQuery library
|
11 |
+
* http://jquery.com
|
12 |
+
*
|
13 |
+
*/
|
14 |
+
|
15 |
+
/*
|
16 |
+
* markup example for $("#slider").easySlider();
|
17 |
+
*
|
18 |
+
* <div id="slider">
|
19 |
+
* <ul>
|
20 |
+
* <li><img src="images/01.jpg" alt="" /></li>
|
21 |
+
* <li><img src="images/02.jpg" alt="" /></li>
|
22 |
+
* <li><img src="images/03.jpg" alt="" /></li>
|
23 |
+
* <li><img src="images/04.jpg" alt="" /></li>
|
24 |
+
* <li><img src="images/05.jpg" alt="" /></li>
|
25 |
+
* </ul>
|
26 |
+
* </div>
|
27 |
+
*
|
28 |
+
*/
|
29 |
+
|
30 |
+
(function($) {
|
31 |
+
|
32 |
+
$.fn.easySlider = function(options){
|
33 |
+
|
34 |
+
// default configuration properties
|
35 |
+
var defaults = {
|
36 |
+
prevId: 'prevBtn',
|
37 |
+
prevText: 'Previous',
|
38 |
+
nextId: 'nextBtn',
|
39 |
+
nextText: 'Next',
|
40 |
+
controlsShow: true,
|
41 |
+
controlsBefore: '',
|
42 |
+
controlsAfter: '',
|
43 |
+
controlsFade: true,
|
44 |
+
firstId: 'firstBtn',
|
45 |
+
firstText: 'First',
|
46 |
+
firstShow: false,
|
47 |
+
lastId: 'lastBtn',
|
48 |
+
lastText: 'Last',
|
49 |
+
lastShow: false,
|
50 |
+
vertical: false,
|
51 |
+
speed: 800,
|
52 |
+
auto: false,
|
53 |
+
pause: 2000,
|
54 |
+
continuous: false
|
55 |
+
};
|
56 |
+
|
57 |
+
var options = $.extend(defaults, options);
|
58 |
+
|
59 |
+
this.each(function() {
|
60 |
+
var obj = $(this);
|
61 |
+
var s = $("li", obj).length;
|
62 |
+
var w = $("li", obj).width();
|
63 |
+
var h = $("li", obj).height();
|
64 |
+
obj.width(w);
|
65 |
+
obj.height(h);
|
66 |
+
obj.css("overflow","hidden");
|
67 |
+
var ts = s-1;
|
68 |
+
var t = 0;
|
69 |
+
$("ul", obj).css('width',s*w);
|
70 |
+
if(!options.vertical) $("li", obj).css('float','left');
|
71 |
+
|
72 |
+
if(options.controlsShow){
|
73 |
+
var html = options.controlsBefore;
|
74 |
+
if(options.firstShow) html += '<span id="'+ options.firstId +'"><a href=\"javascript:void(0);\">'+ options.firstText +'</a></span>';
|
75 |
+
html += ' <span id="'+ options.prevId +'"><a href=\"javascript:void(0);\">'+ options.prevText +'</a></span>';
|
76 |
+
html += ' <span id="'+ options.nextId +'"><a href=\"javascript:void(0);\">'+ options.nextText +'</a></span>';
|
77 |
+
if(options.lastShow) html += ' <span id="'+ options.lastId +'"><a href=\"javascript:void(0);\">'+ options.lastText +'</a></span>';
|
78 |
+
html += options.controlsAfter;
|
79 |
+
$(obj).after(html);
|
80 |
+
};
|
81 |
+
|
82 |
+
$("a","#"+options.nextId).click(function(){
|
83 |
+
animate("next",true);
|
84 |
+
});
|
85 |
+
$("a","#"+options.prevId).click(function(){
|
86 |
+
animate("prev",true);
|
87 |
+
});
|
88 |
+
$("a","#"+options.firstId).click(function(){
|
89 |
+
animate("first",true);
|
90 |
+
});
|
91 |
+
$("a","#"+options.lastId).click(function(){
|
92 |
+
animate("last",true);
|
93 |
+
});
|
94 |
+
|
95 |
+
function animate(dir,clicked){
|
96 |
+
var ot = t;
|
97 |
+
switch(dir){
|
98 |
+
case "next":
|
99 |
+
t = (ot>=ts) ? (options.continuous ? 0 : ts) : t+1;
|
100 |
+
break;
|
101 |
+
case "prev":
|
102 |
+
t = (t<=0) ? (options.continuous ? ts : 0) : t-1;
|
103 |
+
break;
|
104 |
+
case "first":
|
105 |
+
t = 0;
|
106 |
+
break;
|
107 |
+
case "last":
|
108 |
+
t = ts;
|
109 |
+
break;
|
110 |
+
default:
|
111 |
+
break;
|
112 |
+
};
|
113 |
+
|
114 |
+
var diff = Math.abs(ot-t);
|
115 |
+
var speed = diff*options.speed;
|
116 |
+
if(!options.vertical) {
|
117 |
+
p = (t*w*-1);
|
118 |
+
$("ul",obj).animate(
|
119 |
+
{ marginLeft: p },
|
120 |
+
speed
|
121 |
+
);
|
122 |
+
} else {
|
123 |
+
p = (t*h*-1);
|
124 |
+
$("ul",obj).animate(
|
125 |
+
{ marginTop: p },
|
126 |
+
speed
|
127 |
+
);
|
128 |
+
};
|
129 |
+
|
130 |
+
if(!options.continuous && options.controlsFade){
|
131 |
+
if(t==ts){
|
132 |
+
$("a","#"+options.nextId).hide();
|
133 |
+
$("a","#"+options.lastId).hide();
|
134 |
+
} else {
|
135 |
+
$("a","#"+options.nextId).show();
|
136 |
+
$("a","#"+options.lastId).show();
|
137 |
+
};
|
138 |
+
if(t==0){
|
139 |
+
$("a","#"+options.prevId).hide();
|
140 |
+
$("a","#"+options.firstId).hide();
|
141 |
+
} else {
|
142 |
+
$("a","#"+options.prevId).show();
|
143 |
+
$("a","#"+options.firstId).show();
|
144 |
+
};
|
145 |
+
};
|
146 |
+
|
147 |
+
if(clicked) clearTimeout(timeout);
|
148 |
+
if(options.auto && dir=="next" && !clicked){;
|
149 |
+
timeout = setTimeout(function(){
|
150 |
+
animate("next",false);
|
151 |
+
},diff*options.speed+options.pause);
|
152 |
+
};
|
153 |
+
|
154 |
+
};
|
155 |
+
// init
|
156 |
+
var timeout;
|
157 |
+
if(options.auto){;
|
158 |
+
timeout = setTimeout(function(){
|
159 |
+
animate("next",false);
|
160 |
+
},options.pause);
|
161 |
+
};
|
162 |
+
|
163 |
+
if(!options.continuous && options.controlsFade){
|
164 |
+
$("a","#"+options.prevId).hide();
|
165 |
+
$("a","#"+options.firstId).hide();
|
166 |
+
};
|
167 |
+
|
168 |
+
});
|
169 |
+
|
170 |
+
};
|
171 |
+
|
172 |
+
})(jQuery);
|
173 |
+
|
174 |
+
|
175 |
+
|
skin/frontend/default/freepop/js/easybanner/jquery.cycle.js
ADDED
@@ -0,0 +1,750 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* jQuery Cycle Plugin for light-weight slideshows
|
3 |
+
* Examples and documentation at: http://malsup.com/jquery/cycle/
|
4 |
+
* Copyright (c) 2007-2008 M. Alsup
|
5 |
+
* Version: 2.18 (05/06/2008)
|
6 |
+
* Dual licensed under the MIT and GPL licenses:
|
7 |
+
* http://www.opensource.org/licenses/mit-license.php
|
8 |
+
* http://www.gnu.org/licenses/gpl.html
|
9 |
+
* Requires: jQuery v1.1.3.1 or later
|
10 |
+
*
|
11 |
+
* Based on the work of:
|
12 |
+
* 1) Matt Oakes (http://portfolio.gizone.co.uk/applications/slideshow/)
|
13 |
+
* 2) Torsten Baldes (http://medienfreunde.com/lab/innerfade/)
|
14 |
+
* 3) Benjamin Sterling (http://www.benjaminsterling.com/experiments/jqShuffle/)
|
15 |
+
*/
|
16 |
+
(function($) {
|
17 |
+
|
18 |
+
var ver = '2.18';
|
19 |
+
var ie6 = $.browser.msie && /MSIE 6.0/.test(navigator.userAgent);
|
20 |
+
|
21 |
+
function log() {
|
22 |
+
if (window.console && window.console.log)
|
23 |
+
window.console.log('[cycle] ' + Array.prototype.join.call(arguments,''));
|
24 |
+
};
|
25 |
+
|
26 |
+
$.fn.cycle = function(options) {
|
27 |
+
return this.each(function() {
|
28 |
+
options = options || {};
|
29 |
+
if (options.constructor == String) {
|
30 |
+
switch(options) {
|
31 |
+
case 'stop':
|
32 |
+
if (this.cycleTimeout) clearTimeout(this.cycleTimeout);
|
33 |
+
this.cycleTimeout = 0;
|
34 |
+
return;
|
35 |
+
case 'pause':
|
36 |
+
this.cyclePause = 1;
|
37 |
+
return;
|
38 |
+
case 'resume':
|
39 |
+
this.cyclePause = 0;
|
40 |
+
return;
|
41 |
+
default:
|
42 |
+
options = { fx: options };
|
43 |
+
};
|
44 |
+
}
|
45 |
+
|
46 |
+
// stop existing slideshow for this container (if there is one)
|
47 |
+
if (this.cycleTimeout) clearTimeout(this.cycleTimeout);
|
48 |
+
this.cycleTimeout = 0;
|
49 |
+
this.cyclePause = 0;
|
50 |
+
|
51 |
+
var $cont = $(this);
|
52 |
+
var $slides = options.slideExpr ? $(options.slideExpr, this) : $cont.children();
|
53 |
+
var els = $slides.get();
|
54 |
+
if (els.length < 2) {
|
55 |
+
log('terminating; too few slides: ' + els.length);
|
56 |
+
return; // don't bother
|
57 |
+
}
|
58 |
+
|
59 |
+
// support metadata plugin (v1.0 and v2.0)
|
60 |
+
var opts = $.extend({}, $.fn.cycle.defaults, options || {}, $.metadata ? $cont.metadata() : $.meta ? $cont.data() : {});
|
61 |
+
if (opts.autostop)
|
62 |
+
opts.countdown = opts.autostopCount || els.length;
|
63 |
+
|
64 |
+
opts.before = opts.before ? [opts.before] : [];
|
65 |
+
opts.after = opts.after ? [opts.after] : [];
|
66 |
+
opts.after.unshift(function(){ opts.busy=0; });
|
67 |
+
if (opts.continuous)
|
68 |
+
opts.after.push(function() { go(els,opts,0,!opts.rev); });
|
69 |
+
|
70 |
+
// clearType corrections
|
71 |
+
if (ie6 && opts.cleartype && !opts.cleartypeNoBg)
|
72 |
+
clearTypeFix($slides);
|
73 |
+
|
74 |
+
// allow shorthand overrides of width, height and timeout
|
75 |
+
var cls = this.className;
|
76 |
+
opts.width = parseInt((cls.match(/w:(\d+)/)||[])[1]) || opts.width;
|
77 |
+
opts.height = parseInt((cls.match(/h:(\d+)/)||[])[1]) || opts.height;
|
78 |
+
opts.timeout = parseInt((cls.match(/t:(\d+)/)||[])[1]) || opts.timeout;
|
79 |
+
|
80 |
+
if ($cont.css('position') == 'static')
|
81 |
+
$cont.css('position', 'relative');
|
82 |
+
if (opts.width)
|
83 |
+
$cont.width(opts.width);
|
84 |
+
if (opts.height && opts.height != 'auto')
|
85 |
+
$cont.height(opts.height);
|
86 |
+
|
87 |
+
if (opts.random) {
|
88 |
+
opts.randomMap = [];
|
89 |
+
for (var i = 0; i < els.length; i++)
|
90 |
+
opts.randomMap.push(i);
|
91 |
+
opts.randomMap.sort(function(a,b) {return Math.random() - 0.5;});
|
92 |
+
opts.randomIndex = 0;
|
93 |
+
opts.startingSlide = opts.randomMap[0];
|
94 |
+
}
|
95 |
+
else if (opts.startingSlide >= els.length)
|
96 |
+
opts.startingSlide = 0; // catch bogus input
|
97 |
+
var first = opts.startingSlide || 0;
|
98 |
+
$slides.css({position: 'absolute', top:0, left:0}).hide().each(function(i) {
|
99 |
+
var z = first ? i >= first ? els.length - (i-first) : first-i : els.length-i;
|
100 |
+
$(this).css('z-index', z)
|
101 |
+
});
|
102 |
+
|
103 |
+
$(els[first]).css('opacity',1).show(); // opacity bit needed to handle reinit case
|
104 |
+
if ($.browser.msie) els[first].style.removeAttribute('filter');
|
105 |
+
|
106 |
+
if (opts.fit && opts.width)
|
107 |
+
$slides.width(opts.width);
|
108 |
+
if (opts.fit && opts.height && opts.height != 'auto')
|
109 |
+
$slides.height(opts.height);
|
110 |
+
if (opts.pause)
|
111 |
+
$cont.hover(function(){this.cyclePause=1;}, function(){this.cyclePause=0;});
|
112 |
+
|
113 |
+
// run transition init fn
|
114 |
+
var init = $.fn.cycle.transitions[opts.fx];
|
115 |
+
if ($.isFunction(init))
|
116 |
+
init($cont, $slides, opts);
|
117 |
+
else if (opts.fx != 'custom')
|
118 |
+
log('unknown transition: ' + opts.fx);
|
119 |
+
|
120 |
+
$slides.each(function() {
|
121 |
+
var $el = $(this);
|
122 |
+
this.cycleH = (opts.fit && opts.height) ? opts.height : $el.height();
|
123 |
+
this.cycleW = (opts.fit && opts.width) ? opts.width : $el.width();
|
124 |
+
});
|
125 |
+
|
126 |
+
opts.cssBefore = opts.cssBefore || {};
|
127 |
+
opts.animIn = opts.animIn || {};
|
128 |
+
opts.animOut = opts.animOut || {};
|
129 |
+
|
130 |
+
$slides.not(':eq('+first+')').css(opts.cssBefore);
|
131 |
+
if (opts.cssFirst)
|
132 |
+
$($slides[first]).css(opts.cssFirst);
|
133 |
+
|
134 |
+
if (opts.timeout) {
|
135 |
+
// ensure that timeout and speed settings are sane
|
136 |
+
if (opts.speed.constructor == String)
|
137 |
+
opts.speed = {slow: 600, fast: 200}[opts.speed] || 400;
|
138 |
+
if (!opts.sync)
|
139 |
+
opts.speed = opts.speed / 2;
|
140 |
+
while((opts.timeout - opts.speed) < 250)
|
141 |
+
opts.timeout += opts.speed;
|
142 |
+
}
|
143 |
+
if (opts.easing)
|
144 |
+
opts.easeIn = opts.easeOut = opts.easing;
|
145 |
+
if (!opts.speedIn)
|
146 |
+
opts.speedIn = opts.speed;
|
147 |
+
if (!opts.speedOut)
|
148 |
+
opts.speedOut = opts.speed;
|
149 |
+
|
150 |
+
opts.slideCount = els.length;
|
151 |
+
opts.currSlide = first;
|
152 |
+
if (opts.random) {
|
153 |
+
opts.nextSlide = opts.currSlide;
|
154 |
+
if (++opts.randomIndex == els.length)
|
155 |
+
opts.randomIndex = 0;
|
156 |
+
opts.nextSlide = opts.randomMap[opts.randomIndex];
|
157 |
+
}
|
158 |
+
else
|
159 |
+
opts.nextSlide = opts.startingSlide >= (els.length-1) ? 0 : opts.startingSlide+1;
|
160 |
+
|
161 |
+
// fire artificial events
|
162 |
+
var e0 = $slides[first];
|
163 |
+
if (opts.before.length)
|
164 |
+
opts.before[0].apply(e0, [e0, e0, opts, true]);
|
165 |
+
if (opts.after.length > 1)
|
166 |
+
opts.after[1].apply(e0, [e0, e0, opts, true]);
|
167 |
+
|
168 |
+
if (opts.click && !opts.next)
|
169 |
+
opts.next = opts.click;
|
170 |
+
if (opts.next)
|
171 |
+
$(opts.next).bind('click', function(){return advance(els,opts,opts.rev?-1:1)});
|
172 |
+
if (opts.prev)
|
173 |
+
$(opts.prev).bind('click', function(){return advance(els,opts,opts.rev?1:-1)});
|
174 |
+
if (opts.pager)
|
175 |
+
buildPager(els,opts);
|
176 |
+
if (opts.timeout || opts.continuous)
|
177 |
+
this.cycleTimeout = setTimeout(
|
178 |
+
function(){go(els,opts,0,!opts.rev)},
|
179 |
+
opts.continuous ? 10 : opts.timeout + (opts.delay||0));
|
180 |
+
|
181 |
+
// expose fn for adding slides after the show has started
|
182 |
+
opts.addSlide = function(newSlide) {
|
183 |
+
var $s = $(newSlide), s = $s[0];
|
184 |
+
if (!opts.autostopCount)
|
185 |
+
opts.countdown++;
|
186 |
+
els.push(s);
|
187 |
+
if (opts.els)
|
188 |
+
opts.els.push(s); // shuffle needs this
|
189 |
+
opts.slideCount = els.length;
|
190 |
+
$s.css('position','absolute').css(opts.cssBefore).appendTo($cont);
|
191 |
+
|
192 |
+
if (ie6 && opts.cleartype && !opts.cleartypeNoBg)
|
193 |
+
clearTypeFix($s);
|
194 |
+
|
195 |
+
if (opts.fit && opts.width)
|
196 |
+
$s.width(opts.width);
|
197 |
+
if (opts.fit && opts.height && opts.height != 'auto')
|
198 |
+
$slides.height(opts.height);
|
199 |
+
s.cycleH = (opts.fit && opts.height) ? opts.height : $s.height();
|
200 |
+
s.cycleW = (opts.fit && opts.width) ? opts.width : $s.width();
|
201 |
+
};
|
202 |
+
|
203 |
+
});
|
204 |
+
};
|
205 |
+
|
206 |
+
function go(els, opts, manual, fwd) {
|
207 |
+
if (opts.busy) return;
|
208 |
+
var p = els[0].parentNode, curr = els[opts.currSlide], next = els[opts.nextSlide];
|
209 |
+
if (p.cycleTimeout === 0 && !manual)
|
210 |
+
return;
|
211 |
+
|
212 |
+
if (!manual && !p.cyclePause &&
|
213 |
+
((opts.autostop && (--opts.countdown <= 0)) ||
|
214 |
+
(opts.nowrap && !opts.random && opts.nextSlide < opts.currSlide))) {
|
215 |
+
if (opts.end)
|
216 |
+
opts.end(opts);
|
217 |
+
return;
|
218 |
+
}
|
219 |
+
|
220 |
+
if (manual || !p.cyclePause) {
|
221 |
+
if (opts.before.length)
|
222 |
+
$.each(opts.before, function(i,o) { o.apply(next, [curr, next, opts, fwd]); });
|
223 |
+
var after = function() {
|
224 |
+
if ($.browser.msie && opts.cleartype)
|
225 |
+
this.style.removeAttribute('filter');
|
226 |
+
$.each(opts.after, function(i,o) { o.apply(next, [curr, next, opts, fwd]); });
|
227 |
+
};
|
228 |
+
|
229 |
+
if (opts.nextSlide != opts.currSlide) {
|
230 |
+
opts.busy = 1;
|
231 |
+
if (opts.fxFn)
|
232 |
+
opts.fxFn(curr, next, opts, after, fwd);
|
233 |
+
else if ($.isFunction($.fn.cycle[opts.fx]))
|
234 |
+
$.fn.cycle[opts.fx](curr, next, opts, after);
|
235 |
+
else
|
236 |
+
$.fn.cycle.custom(curr, next, opts, after);
|
237 |
+
}
|
238 |
+
if (opts.random) {
|
239 |
+
opts.currSlide = opts.nextSlide;
|
240 |
+
if (++opts.randomIndex == els.length)
|
241 |
+
opts.randomIndex = 0;
|
242 |
+
opts.nextSlide = opts.randomMap[opts.randomIndex];
|
243 |
+
}
|
244 |
+
else { // sequence
|
245 |
+
var roll = (opts.nextSlide + 1) == els.length;
|
246 |
+
opts.nextSlide = roll ? 0 : opts.nextSlide+1;
|
247 |
+
opts.currSlide = roll ? els.length-1 : opts.nextSlide-1;
|
248 |
+
}
|
249 |
+
if (opts.pager)
|
250 |
+
$(opts.pager).find('a').removeClass('activeSlide').filter('a:eq('+opts.currSlide+')').addClass('activeSlide');
|
251 |
+
}
|
252 |
+
if (opts.timeout && !opts.continuous)
|
253 |
+
p.cycleTimeout = setTimeout(function() { go(els,opts,0,!opts.rev) }, opts.timeout);
|
254 |
+
else if (opts.continuous && p.cyclePause)
|
255 |
+
p.cycleTimeout = setTimeout(function() { go(els,opts,0,!opts.rev) }, 10);
|
256 |
+
};
|
257 |
+
|
258 |
+
// advance slide forward or back
|
259 |
+
function advance(els, opts, val) {
|
260 |
+
var p = els[0].parentNode, timeout = p.cycleTimeout;
|
261 |
+
if (timeout) {
|
262 |
+
clearTimeout(timeout);
|
263 |
+
p.cycleTimeout = 0;
|
264 |
+
}
|
265 |
+
opts.nextSlide = opts.currSlide + val;
|
266 |
+
if (opts.nextSlide < 0) {
|
267 |
+
if (opts.nowrap) return false;
|
268 |
+
opts.nextSlide = els.length - 1;
|
269 |
+
}
|
270 |
+
else if (opts.nextSlide >= els.length) {
|
271 |
+
if (opts.nowrap) return false;
|
272 |
+
opts.nextSlide = 0;
|
273 |
+
}
|
274 |
+
if (opts.prevNextClick && typeof opts.prevNextClick == 'function')
|
275 |
+
opts.prevNextClick(val > 0, opts.nextSlide, els[opts.nextSlide]);
|
276 |
+
go(els, opts, 1, val>=0);
|
277 |
+
return false;
|
278 |
+
};
|
279 |
+
|
280 |
+
function buildPager(els, opts) {
|
281 |
+
var $p = $(opts.pager);
|
282 |
+
$.each(els, function(i,o) {
|
283 |
+
var $a = (typeof opts.pagerAnchorBuilder == 'function')
|
284 |
+
? $(opts.pagerAnchorBuilder(i,o))
|
285 |
+
: $('<a href="#">'+(i+1)+'</a>');
|
286 |
+
// don't reparent if anchor is in the dom
|
287 |
+
if ($a.parents('body').length == 0)
|
288 |
+
$a.appendTo($p);
|
289 |
+
$a.bind(opts.pagerEvent, function() {
|
290 |
+
opts.nextSlide = i;
|
291 |
+
var p = els[0].parentNode, timeout = p.cycleTimeout;
|
292 |
+
if (timeout) {
|
293 |
+
clearTimeout(timeout);
|
294 |
+
p.cycleTimeout = 0;
|
295 |
+
}
|
296 |
+
if (typeof opts.pagerClick == 'function')
|
297 |
+
opts.pagerClick(opts.nextSlide, els[opts.nextSlide]);
|
298 |
+
go(els,opts,1,!opts.rev);
|
299 |
+
return false;
|
300 |
+
});
|
301 |
+
});
|
302 |
+
$p.find('a').filter('a:eq('+opts.startingSlide+')').addClass('activeSlide');
|
303 |
+
};
|
304 |
+
|
305 |
+
// this fixes clearType problems in ie6 by setting an explicit bg color
|
306 |
+
function clearTypeFix($slides) {
|
307 |
+
function hex(s) {
|
308 |
+
s = parseInt(s).toString(16);
|
309 |
+
return s.length < 2 ? '0'+s : s;
|
310 |
+
};
|
311 |
+
function getBg(e) {
|
312 |
+
for ( ; e && e.nodeName.toLowerCase() != 'html'; e = e.parentNode) {
|
313 |
+
var v = $.css(e,'background-color');
|
314 |
+
if (v.indexOf('rgb') >= 0 ) {
|
315 |
+
var rgb = v.match(/\d+/g);
|
316 |
+
return '#'+ hex(rgb[0]) + hex(rgb[1]) + hex(rgb[2]);
|
317 |
+
}
|
318 |
+
if (v && v != 'transparent')
|
319 |
+
return v;
|
320 |
+
}
|
321 |
+
return '#ffffff';
|
322 |
+
};
|
323 |
+
$slides.each(function() { $(this).css('background-color', getBg(this)); });
|
324 |
+
};
|
325 |
+
|
326 |
+
|
327 |
+
$.fn.cycle.custom = function(curr, next, opts, cb) {
|
328 |
+
var $l = $(curr), $n = $(next);
|
329 |
+
$n.css(opts.cssBefore);
|
330 |
+
var fn = function() {$n.animate(opts.animIn, opts.speedIn, opts.easeIn, cb)};
|
331 |
+
$l.animate(opts.animOut, opts.speedOut, opts.easeOut, function() {
|
332 |
+
if (opts.cssAfter) $l.css(opts.cssAfter);
|
333 |
+
if (!opts.sync) fn();
|
334 |
+
});
|
335 |
+
if (opts.sync) fn();
|
336 |
+
};
|
337 |
+
|
338 |
+
$.fn.cycle.transitions = {
|
339 |
+
fade: function($cont, $slides, opts) {
|
340 |
+
$slides.not(':eq('+opts.startingSlide+')').css('opacity',0);
|
341 |
+
opts.before.push(function() { $(this).show() });
|
342 |
+
//opts.animIn = { opacity: 1 };
|
343 |
+
//opts.animOut = { opacity: 0 };
|
344 |
+
opts.animIn = { opacity: .99};
|
345 |
+
opts.animOut = { opacity: 0};
|
346 |
+
opts.cssAfter = { display: 'none' };
|
347 |
+
}
|
348 |
+
};
|
349 |
+
|
350 |
+
$.fn.cycle.ver = function() { return ver; };
|
351 |
+
|
352 |
+
// override these globally if you like (they are all optional)
|
353 |
+
$.fn.cycle.defaults = {
|
354 |
+
fx: 'fade', // one of: fade, shuffle, zoom, scrollLeft, etc
|
355 |
+
timeout: 4000, // milliseconds between slide transitions (0 to disable auto advance)
|
356 |
+
continuous: 0, // true to start next transition immediately after current one completes
|
357 |
+
speed: 1000, // speed of the transition (any valid fx speed value)
|
358 |
+
speedIn: null, // speed of the 'in' transition
|
359 |
+
speedOut: null, // speed of the 'out' transition
|
360 |
+
next: null, // id of element to use as click trigger for next slide
|
361 |
+
prev: null, // id of element to use as click trigger for previous slide
|
362 |
+
prevNextClick: null, // callback fn for prev/next clicks: function(isNext, zeroBasedSlideIndex, slideElement)
|
363 |
+
pager: null, // id of element to use as pager container
|
364 |
+
pagerClick: null, // callback fn for pager clicks: function(zeroBasedSlideIndex, slideElement)
|
365 |
+
pagerEvent: 'click', // event which drives the pager navigation
|
366 |
+
pagerAnchorBuilder: null, // callback fn for building anchor links
|
367 |
+
before: null, // transition callback (scope set to element to be shown)
|
368 |
+
after: null, // transition callback (scope set to element that was shown)
|
369 |
+
end: null, // callback invoked when the slideshow terminates (use with autostop or nowrap options)
|
370 |
+
easing: null, // easing method for both in and out transitions
|
371 |
+
easeIn: null, // easing for "in" transition
|
372 |
+
easeOut: null, // easing for "out" transition
|
373 |
+
shuffle: null, // coords for shuffle animation, ex: { top:15, left: 200 }
|
374 |
+
animIn: null, // properties that define how the slide animates in
|
375 |
+
animOut: null, // properties that define how the slide animates out
|
376 |
+
cssBefore: null, // properties that define the initial state of the slide before transitioning in
|
377 |
+
cssAfter: null, // properties that defined the state of the slide after transitioning out
|
378 |
+
fxFn: null, // function used to control the transition
|
379 |
+
height: 'auto', // container height
|
380 |
+
startingSlide: 0, // zero-based index of the first slide to be displayed
|
381 |
+
sync: 1, // true if in/out transitions should occur simultaneously
|
382 |
+
random: 0, // true for random, false for sequence (not applicable to shuffle fx)
|
383 |
+
fit: 0, // force slides to fit container
|
384 |
+
pause: 0, // true to enable "pause on hover"
|
385 |
+
autostop: 0, // true to end slideshow after X transitions (where X == slide count)
|
386 |
+
autostopCount: 0, // number of transitions (optionally used with autostop to define X)
|
387 |
+
delay: 0, // additional delay (in ms) for first transition (hint: can be negative)
|
388 |
+
slideExpr: null, // expression for selecting slides (if something other than all children is required)
|
389 |
+
cleartype: 0, // true if clearType corrections should be applied (for IE)
|
390 |
+
nowrap: 0 // true to prevent slideshow from wrapping
|
391 |
+
};
|
392 |
+
|
393 |
+
})(jQuery);
|
394 |
+
|
395 |
+
|
396 |
+
/*
|
397 |
+
* jQuery Cycle Plugin Transition Definitions
|
398 |
+
* This script is a plugin for the jQuery Cycle Plugin
|
399 |
+
* Examples and documentation at: http://malsup.com/jquery/cycle/
|
400 |
+
* Copyright (c) 2007-2008 M. Alsup
|
401 |
+
* Version: 2.18
|
402 |
+
* Dual licensed under the MIT and GPL licenses:
|
403 |
+
* http://www.opensource.org/licenses/mit-license.php
|
404 |
+
* http://www.gnu.org/licenses/gpl.html
|
405 |
+
*/
|
406 |
+
(function($) {
|
407 |
+
|
408 |
+
//
|
409 |
+
// These functions define one-time slide initialization for the named
|
410 |
+
// transitions. To save file size feel free to remove any of these that you
|
411 |
+
// don't need.
|
412 |
+
//
|
413 |
+
|
414 |
+
// scrollUp/Down/Left/Right
|
415 |
+
$.fn.cycle.transitions.scrollUp = function($cont, $slides, opts) {
|
416 |
+
$cont.css('overflow','hidden');
|
417 |
+
opts.before.push(function(curr, next, opts) {
|
418 |
+
$(this).show();
|
419 |
+
opts.cssBefore.top = next.offsetHeight;
|
420 |
+
opts.animOut.top = 0-curr.offsetHeight;
|
421 |
+
});
|
422 |
+
opts.cssFirst = { top: 0 };
|
423 |
+
opts.animIn = { top: 0 };
|
424 |
+
opts.cssAfter = { display: 'none' };
|
425 |
+
};
|
426 |
+
$.fn.cycle.transitions.scrollDown = function($cont, $slides, opts) {
|
427 |
+
$cont.css('overflow','hidden');
|
428 |
+
opts.before.push(function(curr, next, opts) {
|
429 |
+
$(this).show();
|
430 |
+
opts.cssBefore.top = 0-next.offsetHeight;
|
431 |
+
opts.animOut.top = curr.offsetHeight;
|
432 |
+
});
|
433 |
+
opts.cssFirst = { top: 0 };
|
434 |
+
opts.animIn = { top: 0 };
|
435 |
+
opts.cssAfter = { display: 'none' };
|
436 |
+
};
|
437 |
+
$.fn.cycle.transitions.scrollLeft = function($cont, $slides, opts) {
|
438 |
+
$cont.css('overflow','hidden');
|
439 |
+
opts.before.push(function(curr, next, opts) {
|
440 |
+
$(this).show();
|
441 |
+
opts.cssBefore.left = next.offsetWidth;
|
442 |
+
opts.animOut.left = 0-curr.offsetWidth;
|
443 |
+
});
|
444 |
+
opts.cssFirst = { left: 0 };
|
445 |
+
opts.animIn = { left: 0 };
|
446 |
+
};
|
447 |
+
$.fn.cycle.transitions.scrollRight = function($cont, $slides, opts) {
|
448 |
+
$cont.css('overflow','hidden');
|
449 |
+
opts.before.push(function(curr, next, opts) {
|
450 |
+
$(this).show();
|
451 |
+
opts.cssBefore.left = 0-next.offsetWidth;
|
452 |
+
opts.animOut.left = curr.offsetWidth;
|
453 |
+
});
|
454 |
+
opts.cssFirst = { left: 0 };
|
455 |
+
opts.animIn = { left: 0 };
|
456 |
+
};
|
457 |
+
$.fn.cycle.transitions.scrollHorz = function($cont, $slides, opts) {
|
458 |
+
$cont.css('overflow','hidden').width();
|
459 |
+
// $slides.show();
|
460 |
+
opts.before.push(function(curr, next, opts, fwd) {
|
461 |
+
$(this).show();
|
462 |
+
var currW = curr.offsetWidth, nextW = next.offsetWidth;
|
463 |
+
opts.cssBefore = fwd ? { left: nextW } : { left: -nextW };
|
464 |
+
opts.animIn.left = 0;
|
465 |
+
opts.animOut.left = fwd ? -currW : currW;
|
466 |
+
$slides.not(curr).css(opts.cssBefore);
|
467 |
+
});
|
468 |
+
opts.cssFirst = { left: 0 };
|
469 |
+
opts.cssAfter = { display: 'none' }
|
470 |
+
};
|
471 |
+
$.fn.cycle.transitions.scrollVert = function($cont, $slides, opts) {
|
472 |
+
$cont.css('overflow','hidden');
|
473 |
+
// $slides.show();
|
474 |
+
opts.before.push(function(curr, next, opts, fwd) {
|
475 |
+
$(this).show();
|
476 |
+
var currH = curr.offsetHeight, nextH = next.offsetHeight;
|
477 |
+
opts.cssBefore = fwd ? { top: -nextH } : { top: nextH };
|
478 |
+
opts.animIn.top = 0;
|
479 |
+
opts.animOut.top = fwd ? currH : -currH;
|
480 |
+
$slides.not(curr).css(opts.cssBefore);
|
481 |
+
});
|
482 |
+
opts.cssFirst = { top: 0 };
|
483 |
+
opts.cssAfter = { display: 'none' }
|
484 |
+
};
|
485 |
+
|
486 |
+
// slideX/slideY
|
487 |
+
$.fn.cycle.transitions.slideX = function($cont, $slides, opts) {
|
488 |
+
opts.before.push(function(curr, next, opts) {
|
489 |
+
$(curr).css('zIndex',1);
|
490 |
+
});
|
491 |
+
opts.cssBefore = { zIndex: 2 };
|
492 |
+
opts.animIn = { width: 'show' };
|
493 |
+
opts.animOut = { width: 'hide' };
|
494 |
+
};
|
495 |
+
$.fn.cycle.transitions.slideY = function($cont, $slides, opts) {
|
496 |
+
opts.before.push(function(curr, next, opts) {
|
497 |
+
$(curr).css('zIndex',1);
|
498 |
+
});
|
499 |
+
opts.cssBefore = { zIndex: 2 };
|
500 |
+
opts.animIn = { height: 'show' };
|
501 |
+
opts.animOut = { height: 'hide' };
|
502 |
+
};
|
503 |
+
|
504 |
+
// shuffle
|
505 |
+
$.fn.cycle.transitions.shuffle = function($cont, $slides, opts) {
|
506 |
+
var w = $cont.css('overflow', 'visible').width();
|
507 |
+
$slides.css({left: 0, top: 0});
|
508 |
+
opts.before.push(function() { $(this).show() });
|
509 |
+
opts.speed = opts.speed / 2; // shuffle has 2 transitions
|
510 |
+
opts.random = 0;
|
511 |
+
opts.shuffle = opts.shuffle || {left:-w, top:15};
|
512 |
+
opts.els = [];
|
513 |
+
for (var i=0; i < $slides.length; i++)
|
514 |
+
opts.els.push($slides[i]);
|
515 |
+
|
516 |
+
for (var i=0; i < opts.startingSlide; i++)
|
517 |
+
opts.els.push(opts.els.shift());
|
518 |
+
|
519 |
+
// custom transition fn (hat tip to Benjamin Sterling for this bit of sweetness!)
|
520 |
+
opts.fxFn = function(curr, next, opts, cb, fwd) {
|
521 |
+
var $el = fwd ? $(curr) : $(next);
|
522 |
+
$el.animate(opts.shuffle, opts.speedIn, opts.easeIn, function() {
|
523 |
+
fwd ? opts.els.push(opts.els.shift()) : opts.els.unshift(opts.els.pop());
|
524 |
+
if (fwd)
|
525 |
+
for (var i=0, len=opts.els.length; i < len; i++)
|
526 |
+
$(opts.els[i]).css('z-index', len-i);
|
527 |
+
else {
|
528 |
+
var z = $(curr).css('z-index');
|
529 |
+
$el.css('z-index', parseInt(z)+1);
|
530 |
+
}
|
531 |
+
$el.animate({left:0, top:0}, opts.speedOut, opts.easeOut, function() {
|
532 |
+
$(fwd ? this : curr).hide();
|
533 |
+
if (cb) cb();
|
534 |
+
});
|
535 |
+
});
|
536 |
+
};
|
537 |
+
};
|
538 |
+
|
539 |
+
// turnUp/Down/Left/Right
|
540 |
+
$.fn.cycle.transitions.turnUp = function($cont, $slides, opts) {
|
541 |
+
opts.before.push(function(curr, next, opts) {
|
542 |
+
$(this).show();
|
543 |
+
opts.cssBefore.top = next.cycleH;
|
544 |
+
opts.animIn.height = next.cycleH;
|
545 |
+
});
|
546 |
+
opts.cssFirst = { top: 0 };
|
547 |
+
opts.cssBefore = { height: 0 };
|
548 |
+
opts.animIn = { top: 0 };
|
549 |
+
opts.animOut = { height: 0 };
|
550 |
+
opts.cssAfter = { display: 'none' };
|
551 |
+
};
|
552 |
+
$.fn.cycle.transitions.turnDown = function($cont, $slides, opts) {
|
553 |
+
opts.before.push(function(curr, next, opts) {
|
554 |
+
$(this).show();
|
555 |
+
opts.animIn.height = next.cycleH;
|
556 |
+
opts.animOut.top = curr.cycleH;
|
557 |
+
});
|
558 |
+
opts.cssFirst = { top: 0 };
|
559 |
+
opts.cssBefore = { top: 0, height: 0 };
|
560 |
+
opts.animOut = { height: 0 };
|
561 |
+
opts.cssAfter = { display: 'none' };
|
562 |
+
};
|
563 |
+
$.fn.cycle.transitions.turnLeft = function($cont, $slides, opts) {
|
564 |
+
opts.before.push(function(curr, next, opts) {
|
565 |
+
$(this).show();
|
566 |
+
opts.cssBefore.left = next.cycleW;
|
567 |
+
opts.animIn.width = next.cycleW;
|
568 |
+
});
|
569 |
+
opts.cssBefore = { width: 0 };
|
570 |
+
opts.animIn = { left: 0 };
|
571 |
+
opts.animOut = { width: 0 };
|
572 |
+
opts.cssAfter = { display: 'none' };
|
573 |
+
};
|
574 |
+
$.fn.cycle.transitions.turnRight = function($cont, $slides, opts) {
|
575 |
+
opts.before.push(function(curr, next, opts) {
|
576 |
+
$(this).show();
|
577 |
+
opts.animIn.width = next.cycleW;
|
578 |
+
opts.animOut.left = curr.cycleW;
|
579 |
+
});
|
580 |
+
opts.cssBefore = { left: 0, width: 0 };
|
581 |
+
opts.animIn = { left: 0 };
|
582 |
+
opts.animOut = { width: 0 };
|
583 |
+
opts.cssAfter = { display: 'none' };
|
584 |
+
};
|
585 |
+
|
586 |
+
// zoom
|
587 |
+
$.fn.cycle.transitions.zoom = function($cont, $slides, opts) {
|
588 |
+
opts.cssFirst = { top:0, left: 0 };
|
589 |
+
opts.cssAfter = { display: 'none' };
|
590 |
+
|
591 |
+
opts.before.push(function(curr, next, opts) {
|
592 |
+
$(this).show();
|
593 |
+
opts.cssBefore = { width: 0, height: 0, top: next.cycleH/2, left: next.cycleW/2 };
|
594 |
+
opts.animIn = { top: 0, left: 0, width: next.cycleW, height: next.cycleH };
|
595 |
+
opts.animOut = { width: 0, height: 0, top: curr.cycleH/2, left: curr.cycleW/2 };
|
596 |
+
});
|
597 |
+
};
|
598 |
+
|
599 |
+
// fadeZoom
|
600 |
+
$.fn.cycle.transitions.fadeZoom = function($cont, $slides, opts) {
|
601 |
+
opts.before.push(function(curr, next, opts) {
|
602 |
+
opts.cssBefore = { width: 0, height: 0, opacity: 1, left: next.cycleW/2, top: next.cycleH/2, zIndex: 1 };
|
603 |
+
opts.animIn = { top: 0, left: 0, width: next.cycleW, height: next.cycleH };
|
604 |
+
});
|
605 |
+
opts.animOut = { opacity: 0 };
|
606 |
+
opts.cssAfter = { zIndex: 0 };
|
607 |
+
};
|
608 |
+
|
609 |
+
// blindX
|
610 |
+
$.fn.cycle.transitions.blindX = function($cont, $slides, opts) {
|
611 |
+
var w = $cont.css('overflow','hidden').width();
|
612 |
+
$slides.show();
|
613 |
+
opts.before.push(function(curr, next, opts) {
|
614 |
+
$(curr).css('zIndex',1);
|
615 |
+
});
|
616 |
+
opts.cssBefore = { left: w, zIndex: 2 };
|
617 |
+
opts.cssAfter = { zIndex: 1 };
|
618 |
+
opts.animIn = { left: 0 };
|
619 |
+
opts.animOut = { left: w };
|
620 |
+
};
|
621 |
+
// blindY
|
622 |
+
$.fn.cycle.transitions.blindY = function($cont, $slides, opts) {
|
623 |
+
var h = $cont.css('overflow','hidden').height();
|
624 |
+
$slides.show();
|
625 |
+
opts.before.push(function(curr, next, opts) {
|
626 |
+
$(curr).css('zIndex',1);
|
627 |
+
});
|
628 |
+
opts.cssBefore = { top: h, zIndex: 2 };
|
629 |
+
opts.cssAfter = { zIndex: 1 };
|
630 |
+
opts.animIn = { top: 0 };
|
631 |
+
opts.animOut = { top: h };
|
632 |
+
};
|
633 |
+
// blindZ
|
634 |
+
$.fn.cycle.transitions.blindZ = function($cont, $slides, opts) {
|
635 |
+
var h = $cont.css('overflow','hidden').height();
|
636 |
+
var w = $cont.width();
|
637 |
+
$slides.show();
|
638 |
+
opts.before.push(function(curr, next, opts) {
|
639 |
+
$(curr).css('zIndex',1);
|
640 |
+
});
|
641 |
+
opts.cssBefore = { top: h, left: w, zIndex: 2 };
|
642 |
+
opts.cssAfter = { zIndex: 1 };
|
643 |
+
opts.animIn = { top: 0, left: 0 };
|
644 |
+
opts.animOut = { top: h, left: w };
|
645 |
+
};
|
646 |
+
|
647 |
+
// growX - grow horizontally from centered 0 width
|
648 |
+
$.fn.cycle.transitions.growX = function($cont, $slides, opts) {
|
649 |
+
opts.before.push(function(curr, next, opts) {
|
650 |
+
opts.cssBefore = { left: this.cycleW/2, width: 0, zIndex: 2 };
|
651 |
+
opts.animIn = { left: 0, width: this.cycleW };
|
652 |
+
opts.animOut = { left: 0 };
|
653 |
+
$(curr).css('zIndex',1);
|
654 |
+
});
|
655 |
+
};
|
656 |
+
// growX - grow vertically from centered 0 height
|
657 |
+
$.fn.cycle.transitions.growY = function($cont, $slides, opts) {
|
658 |
+
opts.before.push(function(curr, next, opts) {
|
659 |
+
opts.cssBefore = { top: this.cycleH/2, height: 0, zIndex: 2 };
|
660 |
+
opts.animIn = { top: 0, height: this.cycleH };
|
661 |
+
opts.animOut = { top: 0 };
|
662 |
+
$(curr).css('zIndex',1);
|
663 |
+
});
|
664 |
+
};
|
665 |
+
|
666 |
+
// curtainX - squeeze in both edges horizontally
|
667 |
+
$.fn.cycle.transitions.curtainX = function($cont, $slides, opts) {
|
668 |
+
opts.before.push(function(curr, next, opts) {
|
669 |
+
opts.cssBefore = { left: next.cycleW/2, width: 0, zIndex: 1, display: 'block' };
|
670 |
+
opts.animIn = { left: 0, width: this.cycleW };
|
671 |
+
opts.animOut = { left: curr.cycleW/2, width: 0 };
|
672 |
+
$(curr).css('zIndex',2);
|
673 |
+
});
|
674 |
+
opts.cssAfter = { zIndex: 1, display: 'none' };
|
675 |
+
};
|
676 |
+
// curtainX - squeeze in both edges vertically
|
677 |
+
$.fn.cycle.transitions.curtainY = function($cont, $slides, opts) {
|
678 |
+
opts.before.push(function(curr, next, opts) {
|
679 |
+
opts.cssBefore = { top: next.cycleH/2, height: 0, zIndex: 1, display: 'block' };
|
680 |
+
opts.animIn = { top: 0, height: this.cycleH };
|
681 |
+
opts.animOut = { top: curr.cycleH/2, height: 0 };
|
682 |
+
$(curr).css('zIndex',2);
|
683 |
+
});
|
684 |
+
opts.cssAfter = { zIndex: 1, display: 'none' };
|
685 |
+
};
|
686 |
+
|
687 |
+
// cover - curr slide covered by next slide
|
688 |
+
$.fn.cycle.transitions.cover = function($cont, $slides, opts) {
|
689 |
+
var d = opts.direction || 'left';
|
690 |
+
var w = $cont.css('overflow','hidden').width();
|
691 |
+
var h = $cont.height();
|
692 |
+
opts.before.push(function(curr, next, opts) {
|
693 |
+
opts.cssBefore = { zIndex: 2, display: 'block' };
|
694 |
+
if (d == 'right')
|
695 |
+
opts.cssBefore.left = -w;
|
696 |
+
else if (d == 'up')
|
697 |
+
opts.cssBefore.top = h;
|
698 |
+
else if (d == 'down')
|
699 |
+
opts.cssBefore.top = -h;
|
700 |
+
else
|
701 |
+
opts.cssBefore.left = w;
|
702 |
+
$(curr).css('zIndex',1);
|
703 |
+
});
|
704 |
+
opts.animIn = { left: 0, top: 0 };
|
705 |
+
opts.animOut = { left: 0, top: 0 };
|
706 |
+
opts.cssAfter = { zIndex: 2, display: 'none' };
|
707 |
+
};
|
708 |
+
|
709 |
+
// uncover - curr slide moves off next slide
|
710 |
+
$.fn.cycle.transitions.uncover = function($cont, $slides, opts) {
|
711 |
+
var d = opts.direction || 'left';
|
712 |
+
var w = $cont.css('overflow','hidden').width();
|
713 |
+
var h = $cont.height();
|
714 |
+
opts.before.push(function(curr, next, opts) {
|
715 |
+
opts.cssBefore.display = 'block';
|
716 |
+
if (d == 'right')
|
717 |
+
opts.animOut.left = w;
|
718 |
+
else if (d == 'up')
|
719 |
+
opts.animOut.top = -h;
|
720 |
+
else if (d == 'down')
|
721 |
+
opts.animOut.top = h;
|
722 |
+
else
|
723 |
+
opts.animOut.left = -w;
|
724 |
+
$(curr).css('zIndex',2);
|
725 |
+
});
|
726 |
+
opts.animIn = { left: 0, top: 0 };
|
727 |
+
opts.cssBefore = { zIndex: 1, top: 0, left: 0 };
|
728 |
+
opts.cssAfter = { zIndex: 1, display: 'none' };
|
729 |
+
};
|
730 |
+
|
731 |
+
// toss - move top slide and fade away
|
732 |
+
$.fn.cycle.transitions.toss = function($cont, $slides, opts) {
|
733 |
+
var w = $cont.css('overflow','visible').width();
|
734 |
+
var h = $cont.height();
|
735 |
+
opts.before.push(function(curr, next, opts) {
|
736 |
+
$(curr).css('zIndex',2);
|
737 |
+
opts.cssBefore.display = 'block';
|
738 |
+
// provide default toss settings if animOut not provided
|
739 |
+
if (!opts.animOut.left && !opts.animOut.top)
|
740 |
+
opts.animOut = { left: w*2, top: -h/2, opacity: 0 };
|
741 |
+
else
|
742 |
+
opts.animOut.opacity = 0;
|
743 |
+
});
|
744 |
+
opts.cssBefore = { left: 0, top: 0, zIndex: 1, opacity: 1 };
|
745 |
+
opts.animIn = { left: 0 };
|
746 |
+
opts.cssAfter = { zIndex: 2, display: 'none' };
|
747 |
+
};
|
748 |
+
|
749 |
+
|
750 |
+
})(jQuery);
|
skin/frontend/default/freepop/js/easybanner/jquery.lightbox-0.5.js
ADDED
@@ -0,0 +1,472 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* jQuery lightBox plugin
|
3 |
+
* This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar (http://www.huddletogether.com/projects/lightbox2/)
|
4 |
+
* and adapted to me for use like a plugin from jQuery.
|
5 |
+
* @name jquery-lightbox-0.5.js
|
6 |
+
* @author Leandro Vieira Pinho - http://leandrovieira.com
|
7 |
+
* @version 0.5
|
8 |
+
* @date April 11, 2008
|
9 |
+
* @category jQuery plugin
|
10 |
+
* @copyright (c) 2008 Leandro Vieira Pinho (leandrovieira.com)
|
11 |
+
* @license CC Attribution-No Derivative Works 2.5 Brazil - http://creativecommons.org/licenses/by-nd/2.5/br/deed.en_US
|
12 |
+
* @example Visit http://leandrovieira.com/projects/jquery/lightbox/ for more informations about this jQuery plugin
|
13 |
+
*/
|
14 |
+
|
15 |
+
// Offering a Custom Alias suport - More info: http://docs.jquery.com/Plugins/Authoring#Custom_Alias
|
16 |
+
(function($) {
|
17 |
+
/**
|
18 |
+
* $ is an alias to jQuery object
|
19 |
+
*
|
20 |
+
*/
|
21 |
+
$.fn.lightBox = function(settings) {
|
22 |
+
// Settings to configure the jQuery lightBox plugin how you like
|
23 |
+
settings = jQuery.extend({
|
24 |
+
// Configuration related to overlay
|
25 |
+
overlayBgColor: '#000', // (string) Background color to overlay; inform a hexadecimal value like: #RRGGBB. Where RR, GG, and BB are the hexadecimal values for the red, green, and blue values of the color.
|
26 |
+
overlayOpacity: 0.8, // (integer) Opacity value to overlay; inform: 0.X. Where X are number from 0 to 9
|
27 |
+
// Configuration related to navigation
|
28 |
+
fixedNavigation: false, // (boolean) Boolean that informs if the navigation (next and prev button) will be fixed or not in the interface.
|
29 |
+
// Configuration related to images
|
30 |
+
imageLoading: 'images/lightbox/lightbox-ico-loading.gif', // (string) Path and the name of the loading icon
|
31 |
+
imageBtnPrev: 'images/lightbox/lightbox-btn-prev.gif', // (string) Path and the name of the prev button image
|
32 |
+
imageBtnNext: 'images/lightbox/lightbox-btn-next.gif', // (string) Path and the name of the next button image
|
33 |
+
imageBtnClose: 'images/lightbox/lightbox-btn-close.gif', // (string) Path and the name of the close btn
|
34 |
+
imageBlank: 'images/lightbox/lightbox-blank.gif', // (string) Path and the name of a blank image (one pixel)
|
35 |
+
// Configuration related to container image box
|
36 |
+
containerBorderSize: 10, // (integer) If you adjust the padding in the CSS for the container, #lightbox-container-image-box, you will need to update this value
|
37 |
+
containerResizeSpeed: 400, // (integer) Specify the resize duration of container image. These number are miliseconds. 400 is default.
|
38 |
+
// Configuration related to texts in caption. For example: Image 2 of 8. You can alter either "Image" and "of" texts.
|
39 |
+
txtImage: 'Image', // (string) Specify text "Image"
|
40 |
+
txtOf: 'of', // (string) Specify text "of"
|
41 |
+
// Configuration related to keyboard navigation
|
42 |
+
keyToClose: 'c', // (string) (c = close) Letter to close the jQuery lightBox interface. Beyond this letter, the letter X and the SCAPE key is used to.
|
43 |
+
keyToPrev: 'p', // (string) (p = previous) Letter to show the previous image
|
44 |
+
keyToNext: 'n', // (string) (n = next) Letter to show the next image.
|
45 |
+
// Don¥t alter these variables in any way
|
46 |
+
imageArray: [],
|
47 |
+
activeImage: 0
|
48 |
+
},settings);
|
49 |
+
// Caching the jQuery object with all elements matched
|
50 |
+
var jQueryMatchedObj = this; // This, in this context, refer to jQuery object
|
51 |
+
/**
|
52 |
+
* Initializing the plugin calling the start function
|
53 |
+
*
|
54 |
+
* @return boolean false
|
55 |
+
*/
|
56 |
+
function _initialize() {
|
57 |
+
_start(this,jQueryMatchedObj); // This, in this context, refer to object (link) which the user have clicked
|
58 |
+
return false; // Avoid the browser following the link
|
59 |
+
}
|
60 |
+
/**
|
61 |
+
* Start the jQuery lightBox plugin
|
62 |
+
*
|
63 |
+
* @param object objClicked The object (link) whick the user have clicked
|
64 |
+
* @param object jQueryMatchedObj The jQuery object with all elements matched
|
65 |
+
*/
|
66 |
+
function _start(objClicked,jQueryMatchedObj) {
|
67 |
+
// Hime some elements to avoid conflict with overlay in IE. These elements appear above the overlay.
|
68 |
+
$('embed, object, select').css({ 'visibility' : 'hidden' });
|
69 |
+
// Call the function to create the markup structure; style some elements; assign events in some elements.
|
70 |
+
_set_interface();
|
71 |
+
// Unset total images in imageArray
|
72 |
+
settings.imageArray.length = 0;
|
73 |
+
// Unset image active information
|
74 |
+
settings.activeImage = 0;
|
75 |
+
// We have an image set? Or just an image? Let¥s see it.
|
76 |
+
if ( jQueryMatchedObj.length == 1 ) {
|
77 |
+
settings.imageArray.push(new Array(objClicked.getAttribute('href'),objClicked.getAttribute('title')));
|
78 |
+
} else {
|
79 |
+
// Add an Array (as many as we have), with href and title atributes, inside the Array that storage the images references
|
80 |
+
for ( var i = 0; i < jQueryMatchedObj.length; i++ ) {
|
81 |
+
settings.imageArray.push(new Array(jQueryMatchedObj[i].getAttribute('href'),jQueryMatchedObj[i].getAttribute('title')));
|
82 |
+
}
|
83 |
+
}
|
84 |
+
while ( settings.imageArray[settings.activeImage][0] != objClicked.getAttribute('href') ) {
|
85 |
+
settings.activeImage++;
|
86 |
+
}
|
87 |
+
// Call the function that prepares image exibition
|
88 |
+
_set_image_to_view();
|
89 |
+
}
|
90 |
+
/**
|
91 |
+
* Create the jQuery lightBox plugin interface
|
92 |
+
*
|
93 |
+
* The HTML markup will be like that:
|
94 |
+
<div id="jquery-overlay"></div>
|
95 |
+
<div id="jquery-lightbox">
|
96 |
+
<div id="lightbox-container-image-box">
|
97 |
+
<div id="lightbox-container-image">
|
98 |
+
<img src="../fotos/XX.jpg" id="lightbox-image">
|
99 |
+
<div id="lightbox-nav">
|
100 |
+
<a href="#" id="lightbox-nav-btnPrev"></a>
|
101 |
+
<a href="#" id="lightbox-nav-btnNext"></a>
|
102 |
+
</div>
|
103 |
+
<div id="lightbox-loading">
|
104 |
+
<a href="#" id="lightbox-loading-link">
|
105 |
+
<img src="../images/lightbox-ico-loading.gif">
|
106 |
+
</a>
|
107 |
+
</div>
|
108 |
+
</div>
|
109 |
+
</div>
|
110 |
+
<div id="lightbox-container-image-data-box">
|
111 |
+
<div id="lightbox-container-image-data">
|
112 |
+
<div id="lightbox-image-details">
|
113 |
+
<span id="lightbox-image-details-caption"></span>
|
114 |
+
<span id="lightbox-image-details-currentNumber"></span>
|
115 |
+
</div>
|
116 |
+
<div id="lightbox-secNav">
|
117 |
+
<a href="#" id="lightbox-secNav-btnClose">
|
118 |
+
<img src="../images/lightbox-btn-close.gif">
|
119 |
+
</a>
|
120 |
+
</div>
|
121 |
+
</div>
|
122 |
+
</div>
|
123 |
+
</div>
|
124 |
+
*
|
125 |
+
*/
|
126 |
+
function _set_interface() {
|
127 |
+
// Apply the HTML markup into body tag
|
128 |
+
$('body').append('<div id="jquery-overlay"></div><div id="jquery-lightbox"><div id="lightbox-container-image-box"><div id="lightbox-container-image"><img id="lightbox-image"><div style="" id="lightbox-nav"><a href="#" id="lightbox-nav-btnPrev"></a><a href="#" id="lightbox-nav-btnNext"></a></div><div id="lightbox-loading"><a href="#" id="lightbox-loading-link"><img src="' + settings.imageLoading + '"></a></div></div></div><div id="lightbox-container-image-data-box"><div id="lightbox-container-image-data"><div id="lightbox-image-details"><span id="lightbox-image-details-caption"></span><span id="lightbox-image-details-currentNumber"></span></div><div id="lightbox-secNav"><a href="#" id="lightbox-secNav-btnClose"><img src="' + settings.imageBtnClose + '"></a></div></div></div></div>');
|
129 |
+
// Get page sizes
|
130 |
+
var arrPageSizes = ___getPageSize();
|
131 |
+
// Style overlay and show it
|
132 |
+
$('#jquery-overlay').css({
|
133 |
+
backgroundColor: settings.overlayBgColor,
|
134 |
+
opacity: settings.overlayOpacity,
|
135 |
+
width: arrPageSizes[0],
|
136 |
+
height: arrPageSizes[1]
|
137 |
+
}).fadeIn();
|
138 |
+
// Get page scroll
|
139 |
+
var arrPageScroll = ___getPageScroll();
|
140 |
+
// Calculate top and left offset for the jquery-lightbox div object and show it
|
141 |
+
$('#jquery-lightbox').css({
|
142 |
+
top: arrPageScroll[1] + (arrPageSizes[3] / 10),
|
143 |
+
left: arrPageScroll[0]
|
144 |
+
}).show();
|
145 |
+
// Assigning click events in elements to close overlay
|
146 |
+
$('#jquery-overlay,#jquery-lightbox').click(function() {
|
147 |
+
_finish();
|
148 |
+
});
|
149 |
+
// Assign the _finish function to lightbox-loading-link and lightbox-secNav-btnClose objects
|
150 |
+
$('#lightbox-loading-link,#lightbox-secNav-btnClose').click(function() {
|
151 |
+
_finish();
|
152 |
+
return false;
|
153 |
+
});
|
154 |
+
// If window was resized, calculate the new overlay dimensions
|
155 |
+
$(window).resize(function() {
|
156 |
+
// Get page sizes
|
157 |
+
var arrPageSizes = ___getPageSize();
|
158 |
+
// Style overlay and show it
|
159 |
+
$('#jquery-overlay').css({
|
160 |
+
width: arrPageSizes[0],
|
161 |
+
height: arrPageSizes[1]
|
162 |
+
});
|
163 |
+
// Get page scroll
|
164 |
+
var arrPageScroll = ___getPageScroll();
|
165 |
+
// Calculate top and left offset for the jquery-lightbox div object and show it
|
166 |
+
$('#jquery-lightbox').css({
|
167 |
+
top: arrPageScroll[1] + (arrPageSizes[3] / 10),
|
168 |
+
left: arrPageScroll[0]
|
169 |
+
});
|
170 |
+
});
|
171 |
+
}
|
172 |
+
/**
|
173 |
+
* Prepares image exibition; doing a image¥s preloader to calculate it¥s size
|
174 |
+
*
|
175 |
+
*/
|
176 |
+
function _set_image_to_view() { // show the loading
|
177 |
+
// Show the loading
|
178 |
+
$('#lightbox-loading').show();
|
179 |
+
if ( settings.fixedNavigation ) {
|
180 |
+
$('#lightbox-image,#lightbox-container-image-data-box,#lightbox-image-details-currentNumber').hide();
|
181 |
+
} else {
|
182 |
+
// Hide some elements
|
183 |
+
$('#lightbox-image,#lightbox-nav,#lightbox-nav-btnPrev,#lightbox-nav-btnNext,#lightbox-container-image-data-box,#lightbox-image-details-currentNumber').hide();
|
184 |
+
}
|
185 |
+
// Image preload process
|
186 |
+
var objImagePreloader = new Image();
|
187 |
+
objImagePreloader.onload = function() {
|
188 |
+
$('#lightbox-image').attr('src',settings.imageArray[settings.activeImage][0]);
|
189 |
+
// Perfomance an effect in the image container resizing it
|
190 |
+
_resize_container_image_box(objImagePreloader.width,objImagePreloader.height);
|
191 |
+
// clear onLoad, IE behaves irratically with animated gifs otherwise
|
192 |
+
objImagePreloader.onload=function(){};
|
193 |
+
};
|
194 |
+
objImagePreloader.src = settings.imageArray[settings.activeImage][0];
|
195 |
+
};
|
196 |
+
/**
|
197 |
+
* Perfomance an effect in the image container resizing it
|
198 |
+
*
|
199 |
+
* @param integer intImageWidth The image¥s width that will be showed
|
200 |
+
* @param integer intImageHeight The image¥s height that will be showed
|
201 |
+
*/
|
202 |
+
function _resize_container_image_box(intImageWidth,intImageHeight) {
|
203 |
+
// Get current width and height
|
204 |
+
var intCurrentWidth = $('#lightbox-container-image-box').width();
|
205 |
+
var intCurrentHeight = $('#lightbox-container-image-box').height();
|
206 |
+
// Get the width and height of the selected image plus the padding
|
207 |
+
var intWidth = (intImageWidth + (settings.containerBorderSize * 2)); // Plus the image¥s width and the left and right padding value
|
208 |
+
var intHeight = (intImageHeight + (settings.containerBorderSize * 2)); // Plus the image¥s height and the left and right padding value
|
209 |
+
// Diferences
|
210 |
+
var intDiffW = intCurrentWidth - intWidth;
|
211 |
+
var intDiffH = intCurrentHeight - intHeight;
|
212 |
+
// Perfomance the effect
|
213 |
+
$('#lightbox-container-image-box').animate({ width: intWidth, height: intHeight },settings.containerResizeSpeed,function() { _show_image(); });
|
214 |
+
if ( ( intDiffW == 0 ) && ( intDiffH == 0 ) ) {
|
215 |
+
if ( $.browser.msie ) {
|
216 |
+
___pause(250);
|
217 |
+
} else {
|
218 |
+
___pause(100);
|
219 |
+
}
|
220 |
+
}
|
221 |
+
$('#lightbox-container-image-data-box').css({ width: intImageWidth });
|
222 |
+
$('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css({ height: intImageHeight + (settings.containerBorderSize * 2) });
|
223 |
+
};
|
224 |
+
/**
|
225 |
+
* Show the prepared image
|
226 |
+
*
|
227 |
+
*/
|
228 |
+
function _show_image() {
|
229 |
+
$('#lightbox-loading').hide();
|
230 |
+
$('#lightbox-image').fadeIn(function() {
|
231 |
+
_show_image_data();
|
232 |
+
_set_navigation();
|
233 |
+
});
|
234 |
+
_preload_neighbor_images();
|
235 |
+
};
|
236 |
+
/**
|
237 |
+
* Show the image information
|
238 |
+
*
|
239 |
+
*/
|
240 |
+
function _show_image_data() {
|
241 |
+
$('#lightbox-container-image-data-box').slideDown('fast');
|
242 |
+
$('#lightbox-image-details-caption').hide();
|
243 |
+
if ( settings.imageArray[settings.activeImage][1] ) {
|
244 |
+
$('#lightbox-image-details-caption').html(settings.imageArray[settings.activeImage][1]).show();
|
245 |
+
}
|
246 |
+
// If we have a image set, display 'Image X of X'
|
247 |
+
if ( settings.imageArray.length > 1 ) {
|
248 |
+
$('#lightbox-image-details-currentNumber').html(settings.txtImage + ' ' + ( settings.activeImage + 1 ) + ' ' + settings.txtOf + ' ' + settings.imageArray.length).show();
|
249 |
+
}
|
250 |
+
}
|
251 |
+
/**
|
252 |
+
* Display the button navigations
|
253 |
+
*
|
254 |
+
*/
|
255 |
+
function _set_navigation() {
|
256 |
+
$('#lightbox-nav').show();
|
257 |
+
|
258 |
+
// Instead to define this configuration in CSS file, we define here. And it¥s need to IE. Just.
|
259 |
+
$('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css({ 'background' : 'transparent url(' + settings.imageBlank + ') no-repeat' });
|
260 |
+
|
261 |
+
// Show the prev button, if not the first image in set
|
262 |
+
if ( settings.activeImage != 0 ) {
|
263 |
+
if ( settings.fixedNavigation ) {
|
264 |
+
$('#lightbox-nav-btnPrev').css({ 'background' : 'url(' + settings.imageBtnPrev + ') left 15% no-repeat' })
|
265 |
+
.unbind()
|
266 |
+
.bind('click',function() {
|
267 |
+
settings.activeImage = settings.activeImage - 1;
|
268 |
+
_set_image_to_view();
|
269 |
+
return false;
|
270 |
+
});
|
271 |
+
} else {
|
272 |
+
// Show the images button for Next buttons
|
273 |
+
$('#lightbox-nav-btnPrev').unbind().hover(function() {
|
274 |
+
$(this).css({ 'background' : 'url(' + settings.imageBtnPrev + ') left 15% no-repeat' });
|
275 |
+
},function() {
|
276 |
+
$(this).css({ 'background' : 'transparent url(' + settings.imageBlank + ') no-repeat' });
|
277 |
+
}).show().bind('click',function() {
|
278 |
+
settings.activeImage = settings.activeImage - 1;
|
279 |
+
_set_image_to_view();
|
280 |
+
return false;
|
281 |
+
});
|
282 |
+
}
|
283 |
+
}
|
284 |
+
|
285 |
+
// Show the next button, if not the last image in set
|
286 |
+
if ( settings.activeImage != ( settings.imageArray.length -1 ) ) {
|
287 |
+
if ( settings.fixedNavigation ) {
|
288 |
+
$('#lightbox-nav-btnNext').css({ 'background' : 'url(' + settings.imageBtnNext + ') right 15% no-repeat' })
|
289 |
+
.unbind()
|
290 |
+
.bind('click',function() {
|
291 |
+
settings.activeImage = settings.activeImage + 1;
|
292 |
+
_set_image_to_view();
|
293 |
+
return false;
|
294 |
+
});
|
295 |
+
} else {
|
296 |
+
// Show the images button for Next buttons
|
297 |
+
$('#lightbox-nav-btnNext').unbind().hover(function() {
|
298 |
+
$(this).css({ 'background' : 'url(' + settings.imageBtnNext + ') right 15% no-repeat' });
|
299 |
+
},function() {
|
300 |
+
$(this).css({ 'background' : 'transparent url(' + settings.imageBlank + ') no-repeat' });
|
301 |
+
}).show().bind('click',function() {
|
302 |
+
settings.activeImage = settings.activeImage + 1;
|
303 |
+
_set_image_to_view();
|
304 |
+
return false;
|
305 |
+
});
|
306 |
+
}
|
307 |
+
}
|
308 |
+
// Enable keyboard navigation
|
309 |
+
_enable_keyboard_navigation();
|
310 |
+
}
|
311 |
+
/**
|
312 |
+
* Enable a support to keyboard navigation
|
313 |
+
*
|
314 |
+
*/
|
315 |
+
function _enable_keyboard_navigation() {
|
316 |
+
$(document).keydown(function(objEvent) {
|
317 |
+
_keyboard_action(objEvent);
|
318 |
+
});
|
319 |
+
}
|
320 |
+
/**
|
321 |
+
* Disable the support to keyboard navigation
|
322 |
+
*
|
323 |
+
*/
|
324 |
+
function _disable_keyboard_navigation() {
|
325 |
+
$(document).unbind();
|
326 |
+
}
|
327 |
+
/**
|
328 |
+
* Perform the keyboard actions
|
329 |
+
*
|
330 |
+
*/
|
331 |
+
function _keyboard_action(objEvent) {
|
332 |
+
// To ie
|
333 |
+
if ( objEvent == null ) {
|
334 |
+
keycode = event.keyCode;
|
335 |
+
escapeKey = 27;
|
336 |
+
// To Mozilla
|
337 |
+
} else {
|
338 |
+
keycode = objEvent.keyCode;
|
339 |
+
escapeKey = objEvent.DOM_VK_ESCAPE;
|
340 |
+
}
|
341 |
+
// Get the key in lower case form
|
342 |
+
key = String.fromCharCode(keycode).toLowerCase();
|
343 |
+
// Verify the keys to close the ligthBox
|
344 |
+
if ( ( key == settings.keyToClose ) || ( key == 'x' ) || ( keycode == escapeKey ) ) {
|
345 |
+
_finish();
|
346 |
+
}
|
347 |
+
// Verify the key to show the previous image
|
348 |
+
if ( ( key == settings.keyToPrev ) || ( keycode == 37 ) ) {
|
349 |
+
// If we¥re not showing the first image, call the previous
|
350 |
+
if ( settings.activeImage != 0 ) {
|
351 |
+
settings.activeImage = settings.activeImage - 1;
|
352 |
+
_set_image_to_view();
|
353 |
+
_disable_keyboard_navigation();
|
354 |
+
}
|
355 |
+
}
|
356 |
+
// Verify the key to show the next image
|
357 |
+
if ( ( key == settings.keyToNext ) || ( keycode == 39 ) ) {
|
358 |
+
// If we¥re not showing the last image, call the next
|
359 |
+
if ( settings.activeImage != ( settings.imageArray.length - 1 ) ) {
|
360 |
+
settings.activeImage = settings.activeImage + 1;
|
361 |
+
_set_image_to_view();
|
362 |
+
_disable_keyboard_navigation();
|
363 |
+
}
|
364 |
+
}
|
365 |
+
}
|
366 |
+
/**
|
367 |
+
* Preload prev and next images being showed
|
368 |
+
*
|
369 |
+
*/
|
370 |
+
function _preload_neighbor_images() {
|
371 |
+
if ( (settings.imageArray.length -1) > settings.activeImage ) {
|
372 |
+
objNext = new Image();
|
373 |
+
objNext.src = settings.imageArray[settings.activeImage + 1][0];
|
374 |
+
}
|
375 |
+
if ( settings.activeImage > 0 ) {
|
376 |
+
objPrev = new Image();
|
377 |
+
objPrev.src = settings.imageArray[settings.activeImage -1][0];
|
378 |
+
}
|
379 |
+
}
|
380 |
+
/**
|
381 |
+
* Remove jQuery lightBox plugin HTML markup
|
382 |
+
*
|
383 |
+
*/
|
384 |
+
function _finish() {
|
385 |
+
$('#jquery-lightbox').remove();
|
386 |
+
$('#jquery-overlay').fadeOut(function() { $('#jquery-overlay').remove(); });
|
387 |
+
// Show some elements to avoid conflict with overlay in IE. These elements appear above the overlay.
|
388 |
+
$('embed, object, select').css({ 'visibility' : 'visible' });
|
389 |
+
}
|
390 |
+
/**
|
391 |
+
/ THIRD FUNCTION
|
392 |
+
* getPageSize() by quirksmode.com
|
393 |
+
*
|
394 |
+
* @return Array Return an array with page width, height and window width, height
|
395 |
+
*/
|
396 |
+
function ___getPageSize() {
|
397 |
+
var xScroll, yScroll;
|
398 |
+
if (window.innerHeight && window.scrollMaxY) {
|
399 |
+
xScroll = window.innerWidth + window.scrollMaxX;
|
400 |
+
yScroll = window.innerHeight + window.scrollMaxY;
|
401 |
+
} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
|
402 |
+
xScroll = document.body.scrollWidth;
|
403 |
+
yScroll = document.body.scrollHeight;
|
404 |
+
} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
|
405 |
+
xScroll = document.body.offsetWidth;
|
406 |
+
yScroll = document.body.offsetHeight;
|
407 |
+
}
|
408 |
+
var windowWidth, windowHeight;
|
409 |
+
if (self.innerHeight) { // all except Explorer
|
410 |
+
if(document.documentElement.clientWidth){
|
411 |
+
windowWidth = document.documentElement.clientWidth;
|
412 |
+
} else {
|
413 |
+
windowWidth = self.innerWidth;
|
414 |
+
}
|
415 |
+
windowHeight = self.innerHeight;
|
416 |
+
} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
|
417 |
+
windowWidth = document.documentElement.clientWidth;
|
418 |
+
windowHeight = document.documentElement.clientHeight;
|
419 |
+
} else if (document.body) { // other Explorers
|
420 |
+
windowWidth = document.body.clientWidth;
|
421 |
+
windowHeight = document.body.clientHeight;
|
422 |
+
}
|
423 |
+
// for small pages with total height less then height of the viewport
|
424 |
+
if(yScroll < windowHeight){
|
425 |
+
pageHeight = windowHeight;
|
426 |
+
} else {
|
427 |
+
pageHeight = yScroll;
|
428 |
+
}
|
429 |
+
// for small pages with total width less then width of the viewport
|
430 |
+
if(xScroll < windowWidth){
|
431 |
+
pageWidth = xScroll;
|
432 |
+
} else {
|
433 |
+
pageWidth = windowWidth;
|
434 |
+
}
|
435 |
+
arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);
|
436 |
+
return arrayPageSize;
|
437 |
+
};
|
438 |
+
/**
|
439 |
+
/ THIRD FUNCTION
|
440 |
+
* getPageScroll() by quirksmode.com
|
441 |
+
*
|
442 |
+
* @return Array Return an array with x,y page scroll values.
|
443 |
+
*/
|
444 |
+
function ___getPageScroll() {
|
445 |
+
var xScroll, yScroll;
|
446 |
+
if (self.pageYOffset) {
|
447 |
+
yScroll = self.pageYOffset;
|
448 |
+
xScroll = self.pageXOffset;
|
449 |
+
} else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
|
450 |
+
yScroll = document.documentElement.scrollTop;
|
451 |
+
xScroll = document.documentElement.scrollLeft;
|
452 |
+
} else if (document.body) {// all other Explorers
|
453 |
+
yScroll = document.body.scrollTop;
|
454 |
+
xScroll = document.body.scrollLeft;
|
455 |
+
}
|
456 |
+
arrayPageScroll = new Array(xScroll,yScroll);
|
457 |
+
return arrayPageScroll;
|
458 |
+
};
|
459 |
+
/**
|
460 |
+
* Stop the code execution from a escified time in milisecond
|
461 |
+
*
|
462 |
+
*/
|
463 |
+
function ___pause(ms) {
|
464 |
+
var date = new Date();
|
465 |
+
curDate = null;
|
466 |
+
do { var curDate = new Date(); }
|
467 |
+
while ( curDate - date < ms);
|
468 |
+
};
|
469 |
+
// Return the jQuery object for chaining. The unbind method is used to avoid click conflict when the plugin is called more than once
|
470 |
+
return this.unbind('click').click(_initialize);
|
471 |
+
};
|
472 |
+
})(jQuery); // Call and execute the function immediately passing the jQuery object
|
skin/frontend/default/freepop/js/easybanner/jquery.msAccordion.js
ADDED
@@ -0,0 +1,97 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
//menu Accordion
|
2 |
+
//author: Marghoob Suleman
|
3 |
+
//Date: 05th Aug, 2009
|
4 |
+
//Version: 1.0
|
5 |
+
//web: www.giftlelo.com | www.marghoobsuleman.com
|
6 |
+
;(function($){
|
7 |
+
$.fn.msAccordion = function(options) {
|
8 |
+
options = $.extend({
|
9 |
+
currentDiv:'1',
|
10 |
+
previousDiv:'',
|
11 |
+
vertical: false,
|
12 |
+
defaultid:0,
|
13 |
+
currentcounter:0,
|
14 |
+
intervalid:0,
|
15 |
+
autodelay:0,
|
16 |
+
event:"click",
|
17 |
+
alldivs_array:new Array()
|
18 |
+
}, options);
|
19 |
+
$(this).addClass("accordionWrapper");
|
20 |
+
$(this).css({overflow:"hidden"});
|
21 |
+
//alert(this);
|
22 |
+
var elementid = $(this).attr("id");
|
23 |
+
var allDivs = this.children();
|
24 |
+
if(options.autodelay>0) {
|
25 |
+
$("#"+ elementid +" > div").bind("mouseenter", function(){
|
26 |
+
pause();
|
27 |
+
});
|
28 |
+
$("#"+ elementid +" > div").bind("mouseleave", function(){
|
29 |
+
startPlay();
|
30 |
+
});
|
31 |
+
}
|
32 |
+
//set ids
|
33 |
+
allDivs.each(function(current) {
|
34 |
+
var iCurrent = current;
|
35 |
+
var sTitleID = elementid+"_msTitle_"+(iCurrent);
|
36 |
+
var sContentID = sTitleID+"_msContent_"+(iCurrent);
|
37 |
+
var currentDiv = allDivs[iCurrent];
|
38 |
+
var totalChild = currentDiv.childNodes.length;
|
39 |
+
var titleDiv = $(currentDiv).find("div.title");
|
40 |
+
titleDiv.attr("id", sTitleID);
|
41 |
+
var contentDiv = $(currentDiv).find("div.content");
|
42 |
+
contentDiv.attr("id", sContentID);
|
43 |
+
options.alldivs_array.push(sTitleID);
|
44 |
+
//$("#"+sTitleID).click(function(){openMe(sTitleID);});
|
45 |
+
$("#"+sTitleID).bind(options.event, function(){pause();openMe(sTitleID);});
|
46 |
+
});
|
47 |
+
|
48 |
+
//make vertical
|
49 |
+
if(options.vertical) {makeVertical();};
|
50 |
+
//open default
|
51 |
+
openMe(elementid+"_msTitle_"+options.defaultid);
|
52 |
+
if(options.autodelay>0) {startPlay();};
|
53 |
+
//alert(allDivs.length);
|
54 |
+
function openMe(id) {
|
55 |
+
var sTitleID = id;
|
56 |
+
var iCurrent = sTitleID.split("_")[sTitleID.split("_").length-1];
|
57 |
+
options.currentcounter = iCurrent;
|
58 |
+
var sContentID = id+"_msContent_"+iCurrent;
|
59 |
+
if($("#"+sContentID).css("display")=="none") {
|
60 |
+
if(options.previousDiv!="") {
|
61 |
+
closeMe(options.previousDiv);
|
62 |
+
};
|
63 |
+
if(options.vertical) {
|
64 |
+
$("#"+sContentID).slideDown("slow");
|
65 |
+
} else {
|
66 |
+
$("#"+sContentID).show("slow");
|
67 |
+
}
|
68 |
+
options.currentDiv = sContentID;
|
69 |
+
options.previousDiv = options.currentDiv;
|
70 |
+
};
|
71 |
+
};
|
72 |
+
function closeMe(div) {
|
73 |
+
if(options.vertical) {
|
74 |
+
$("#"+div).slideUp("slow");
|
75 |
+
} else {
|
76 |
+
$("#"+div).hide("slow");
|
77 |
+
};
|
78 |
+
};
|
79 |
+
function makeVertical() {
|
80 |
+
$("#"+elementid +" > div").css({display:"block", float:"none", clear:"both"});
|
81 |
+
$("#"+elementid +" > div > div.title").css({display:"block", float:"none", clear:"both"});
|
82 |
+
$("#"+elementid +" > div > div.content").css({clear:"both"});
|
83 |
+
};
|
84 |
+
function startPlay() {
|
85 |
+
options.intervalid = window.setInterval(play, options.autodelay*4000);
|
86 |
+
};
|
87 |
+
function play() {
|
88 |
+
var sTitleId = options.alldivs_array[options.currentcounter];
|
89 |
+
openMe(sTitleId);
|
90 |
+
options.currentcounter++;
|
91 |
+
if(options.currentcounter==options.alldivs_array.length) options.currentcounter = 0;
|
92 |
+
};
|
93 |
+
function pause() {
|
94 |
+
window.clearInterval(options.intervalid);
|
95 |
+
};
|
96 |
+
}
|
97 |
+
})(jQuery);
|
skin/frontend/default/freepop/js/easybanner/plugins.init.js
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// no conflicts with other frameworks
|
2 |
+
var $j = jQuery.noConflict();
|
3 |
+
|
4 |
+
//
|
5 |
+
// window.onload function to setup various javascripts
|
6 |
+
//
|
7 |
+
$j(function() {
|
8 |
+
//fix png transparency in IE<6
|
9 |
+
//$j('img[@src$=.png]').ifixpng();
|
10 |
+
//lightbox gallery
|
11 |
+
$j('.lightbox_image').lightBox();
|
12 |
+
//This is for Zooming Images
|
13 |
+
//$j.imgzoom();
|
14 |
+
});
|
15 |
+
|
16 |
+
|
skin/frontend/default/freepop/js/galleryview/jquery.easing.1.3.js
ADDED
@@ -0,0 +1,205 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
|
3 |
+
*
|
4 |
+
* Uses the built in easing capabilities added In jQuery 1.1
|
5 |
+
* to offer multiple easing options
|
6 |
+
*
|
7 |
+
* TERMS OF USE - jQuery Easing
|
8 |
+
*
|
9 |
+
* Open source under the BSD License.
|
10 |
+
*
|
11 |
+
* Copyright © 2008 George McGinley Smith
|
12 |
+
* All rights reserved.
|
13 |
+
*
|
14 |
+
* Redistribution and use in source and binary forms, with or without modification,
|
15 |
+
* are permitted provided that the following conditions are met:
|
16 |
+
*
|
17 |
+
* Redistributions of source code must retain the above copyright notice, this list of
|
18 |
+
* conditions and the following disclaimer.
|
19 |
+
* Redistributions in binary form must reproduce the above copyright notice, this list
|
20 |
+
* of conditions and the following disclaimer in the documentation and/or other materials
|
21 |
+
* provided with the distribution.
|
22 |
+
*
|
23 |
+
* Neither the name of the author nor the names of contributors may be used to endorse
|
24 |
+
* or promote products derived from this software without specific prior written permission.
|
25 |
+
*
|
26 |
+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
27 |
+
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
28 |
+
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
29 |
+
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
30 |
+
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
31 |
+
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
32 |
+
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
33 |
+
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
34 |
+
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
35 |
+
*
|
36 |
+
*/
|
37 |
+
|
38 |
+
// t: current time, b: begInnIng value, c: change In value, d: duration
|
39 |
+
jQuery.easing['jswing'] = jQuery.easing['swing'];
|
40 |
+
|
41 |
+
jQuery.extend( jQuery.easing,
|
42 |
+
{
|
43 |
+
def: 'easeOutQuad',
|
44 |
+
swing: function (x, t, b, c, d) {
|
45 |
+
//alert(jQuery.easing.default);
|
46 |
+
return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
|
47 |
+
},
|
48 |
+
easeInQuad: function (x, t, b, c, d) {
|
49 |
+
return c*(t/=d)*t + b;
|
50 |
+
},
|
51 |
+
easeOutQuad: function (x, t, b, c, d) {
|
52 |
+
return -c *(t/=d)*(t-2) + b;
|
53 |
+
},
|
54 |
+
easeInOutQuad: function (x, t, b, c, d) {
|
55 |
+
if ((t/=d/2) < 1) return c/2*t*t + b;
|
56 |
+
return -c/2 * ((--t)*(t-2) - 1) + b;
|
57 |
+
},
|
58 |
+
easeInCubic: function (x, t, b, c, d) {
|
59 |
+
return c*(t/=d)*t*t + b;
|
60 |
+
},
|
61 |
+
easeOutCubic: function (x, t, b, c, d) {
|
62 |
+
return c*((t=t/d-1)*t*t + 1) + b;
|
63 |
+
},
|
64 |
+
easeInOutCubic: function (x, t, b, c, d) {
|
65 |
+
if ((t/=d/2) < 1) return c/2*t*t*t + b;
|
66 |
+
return c/2*((t-=2)*t*t + 2) + b;
|
67 |
+
},
|
68 |
+
easeInQuart: function (x, t, b, c, d) {
|
69 |
+
return c*(t/=d)*t*t*t + b;
|
70 |
+
},
|
71 |
+
easeOutQuart: function (x, t, b, c, d) {
|
72 |
+
return -c * ((t=t/d-1)*t*t*t - 1) + b;
|
73 |
+
},
|
74 |
+
easeInOutQuart: function (x, t, b, c, d) {
|
75 |
+
if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
|
76 |
+
return -c/2 * ((t-=2)*t*t*t - 2) + b;
|
77 |
+
},
|
78 |
+
easeInQuint: function (x, t, b, c, d) {
|
79 |
+
return c*(t/=d)*t*t*t*t + b;
|
80 |
+
},
|
81 |
+
easeOutQuint: function (x, t, b, c, d) {
|
82 |
+
return c*((t=t/d-1)*t*t*t*t + 1) + b;
|
83 |
+
},
|
84 |
+
easeInOutQuint: function (x, t, b, c, d) {
|
85 |
+
if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
|
86 |
+
return c/2*((t-=2)*t*t*t*t + 2) + b;
|
87 |
+
},
|
88 |
+
easeInSine: function (x, t, b, c, d) {
|
89 |
+
return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
|
90 |
+
},
|
91 |
+
easeOutSine: function (x, t, b, c, d) {
|
92 |
+
return c * Math.sin(t/d * (Math.PI/2)) + b;
|
93 |
+
},
|
94 |
+
easeInOutSine: function (x, t, b, c, d) {
|
95 |
+
return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
|
96 |
+
},
|
97 |
+
easeInExpo: function (x, t, b, c, d) {
|
98 |
+
return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
|
99 |
+
},
|
100 |
+
easeOutExpo: function (x, t, b, c, d) {
|
101 |
+
return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
|
102 |
+
},
|
103 |
+
easeInOutExpo: function (x, t, b, c, d) {
|
104 |
+
if (t==0) return b;
|
105 |
+
if (t==d) return b+c;
|
106 |
+
if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
|
107 |
+
return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
|
108 |
+
},
|
109 |
+
easeInCirc: function (x, t, b, c, d) {
|
110 |
+
return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
|
111 |
+
},
|
112 |
+
easeOutCirc: function (x, t, b, c, d) {
|
113 |
+
return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
|
114 |
+
},
|
115 |
+
easeInOutCirc: function (x, t, b, c, d) {
|
116 |
+
if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
|
117 |
+
return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
|
118 |
+
},
|
119 |
+
easeInElastic: function (x, t, b, c, d) {
|
120 |
+
var s=1.70158;var p=0;var a=c;
|
121 |
+
if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
|
122 |
+
if (a < Math.abs(c)) { a=c; var s=p/4; }
|
123 |
+
else var s = p/(2*Math.PI) * Math.asin (c/a);
|
124 |
+
return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
|
125 |
+
},
|
126 |
+
easeOutElastic: function (x, t, b, c, d) {
|
127 |
+
var s=1.70158;var p=0;var a=c;
|
128 |
+
if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
|
129 |
+
if (a < Math.abs(c)) { a=c; var s=p/4; }
|
130 |
+
else var s = p/(2*Math.PI) * Math.asin (c/a);
|
131 |
+
return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
|
132 |
+
},
|
133 |
+
easeInOutElastic: function (x, t, b, c, d) {
|
134 |
+
var s=1.70158;var p=0;var a=c;
|
135 |
+
if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);
|
136 |
+
if (a < Math.abs(c)) { a=c; var s=p/4; }
|
137 |
+
else var s = p/(2*Math.PI) * Math.asin (c/a);
|
138 |
+
if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
|
139 |
+
return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
|
140 |
+
},
|
141 |
+
easeInBack: function (x, t, b, c, d, s) {
|
142 |
+
if (s == undefined) s = 1.70158;
|
143 |
+
return c*(t/=d)*t*((s+1)*t - s) + b;
|
144 |
+
},
|
145 |
+
easeOutBack: function (x, t, b, c, d, s) {
|
146 |
+
if (s == undefined) s = 1.70158;
|
147 |
+
return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
|
148 |
+
},
|
149 |
+
easeInOutBack: function (x, t, b, c, d, s) {
|
150 |
+
if (s == undefined) s = 1.70158;
|
151 |
+
if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
|
152 |
+
return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
|
153 |
+
},
|
154 |
+
easeInBounce: function (x, t, b, c, d) {
|
155 |
+
return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b;
|
156 |
+
},
|
157 |
+
easeOutBounce: function (x, t, b, c, d) {
|
158 |
+
if ((t/=d) < (1/2.75)) {
|
159 |
+
return c*(7.5625*t*t) + b;
|
160 |
+
} else if (t < (2/2.75)) {
|
161 |
+
return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
|
162 |
+
} else if (t < (2.5/2.75)) {
|
163 |
+
return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
|
164 |
+
} else {
|
165 |
+
return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
|
166 |
+
}
|
167 |
+
},
|
168 |
+
easeInOutBounce: function (x, t, b, c, d) {
|
169 |
+
if (t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
|
170 |
+
return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
|
171 |
+
}
|
172 |
+
});
|
173 |
+
|
174 |
+
/*
|
175 |
+
*
|
176 |
+
* TERMS OF USE - EASING EQUATIONS
|
177 |
+
*
|
178 |
+
* Open source under the BSD License.
|
179 |
+
*
|
180 |
+
* Copyright © 2001 Robert Penner
|
181 |
+
* All rights reserved.
|
182 |
+
*
|
183 |
+
* Redistribution and use in source and binary forms, with or without modification,
|
184 |
+
* are permitted provided that the following conditions are met:
|
185 |
+
*
|
186 |
+
* Redistributions of source code must retain the above copyright notice, this list of
|
187 |
+
* conditions and the following disclaimer.
|
188 |
+
* Redistributions in binary form must reproduce the above copyright notice, this list
|
189 |
+
* of conditions and the following disclaimer in the documentation and/or other materials
|
190 |
+
* provided with the distribution.
|
191 |
+
*
|
192 |
+
* Neither the name of the author nor the names of contributors may be used to endorse
|
193 |
+
* or promote products derived from this software without specific prior written permission.
|
194 |
+
*
|
195 |
+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
|
196 |
+
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
197 |
+
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
198 |
+
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
199 |
+
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
200 |
+
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
201 |
+
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
202 |
+
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
203 |
+
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
204 |
+
*
|
205 |
+
*/
|
skin/frontend/default/freepop/js/galleryview/jquery.galleryview-1.1.js
ADDED
@@ -0,0 +1,548 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
|
3 |
+
GalleryView - jQuery Content Gallery Plugin
|
4 |
+
Author: Jack Anderson
|
5 |
+
Version: 1.1 (April 5, 2009)
|
6 |
+
Documentation: http://www.spaceforaname.com/jquery/galleryview/
|
7 |
+
|
8 |
+
Please use this development script if you intend to make changes to the
|
9 |
+
plugin code. For production sites, please use jquery.galleryview-1.0.1-pack.js.
|
10 |
+
|
11 |
+
*/
|
12 |
+
(function($){
|
13 |
+
$.fn.galleryView = function(options) {
|
14 |
+
var opts = $.extend($.fn.galleryView.defaults,options);
|
15 |
+
|
16 |
+
var id;
|
17 |
+
var iterator = 0;
|
18 |
+
var gallery_width;
|
19 |
+
var gallery_height;
|
20 |
+
var frame_margin = 10;
|
21 |
+
var strip_width;
|
22 |
+
var wrapper_width;
|
23 |
+
var item_count = 0;
|
24 |
+
var slide_method;
|
25 |
+
var img_path;
|
26 |
+
var paused = false;
|
27 |
+
var frame_caption_size = 20;
|
28 |
+
var frame_margin_top = 5;
|
29 |
+
var pointer_width = 2;
|
30 |
+
|
31 |
+
//Define jQuery objects for reuse
|
32 |
+
var j_gallery;
|
33 |
+
var j_filmstrip;
|
34 |
+
var j_frames;
|
35 |
+
var j_panels;
|
36 |
+
var j_pointer;
|
37 |
+
|
38 |
+
/************************************************/
|
39 |
+
/* Plugin Methods */
|
40 |
+
/************************************************/
|
41 |
+
function showItem(i) {
|
42 |
+
//Disable next/prev buttons until transition is complete
|
43 |
+
$('img.nav-next').unbind('click');
|
44 |
+
$('img.nav-prev').unbind('click');
|
45 |
+
j_frames.unbind('click');
|
46 |
+
if(has_panels) {
|
47 |
+
if(opts.fade_panels) {
|
48 |
+
//Fade out all panels and fade in target panel
|
49 |
+
j_panels.fadeOut(opts.transition_speed).eq(i%item_count).fadeIn(opts.transition_speed,function(){
|
50 |
+
if(!has_filmstrip) {
|
51 |
+
$('img.nav-prev').click(showPrevItem);
|
52 |
+
$('img.nav-next').click(showNextItem);
|
53 |
+
}
|
54 |
+
});
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
if(has_filmstrip) {
|
59 |
+
//Slide either pointer or filmstrip, depending on transition method
|
60 |
+
if(slide_method=='strip') {
|
61 |
+
//Stop filmstrip if it's currently in motion
|
62 |
+
j_filmstrip.stop();
|
63 |
+
|
64 |
+
//Determine distance between pointer (eventual destination) and target frame
|
65 |
+
var distance = getPos(j_frames[i]).left - (getPos(j_pointer[0]).left+2);
|
66 |
+
var leftstr = (distance>=0?'-=':'+=')+Math.abs(distance)+'px';
|
67 |
+
|
68 |
+
//Animate filmstrip and slide target frame under pointer
|
69 |
+
//If target frame is a duplicate, jump back to 'original' frame
|
70 |
+
j_filmstrip.animate({
|
71 |
+
'left':leftstr
|
72 |
+
},opts.transition_speed,opts.easing,function(){
|
73 |
+
//Always ensure that there are a sufficient number of hidden frames on either
|
74 |
+
//side of the filmstrip to avoid empty frames
|
75 |
+
if(i>item_count) {
|
76 |
+
i = i%item_count;
|
77 |
+
iterator = i;
|
78 |
+
j_filmstrip.css('left','-'+((opts.frame_width+frame_margin)*i)+'px');
|
79 |
+
} else if (i<=(item_count-strip_size)) {
|
80 |
+
i = (i%item_count)+item_count;
|
81 |
+
iterator = i;
|
82 |
+
j_filmstrip.css('left','-'+((opts.frame_width+frame_margin)*i)+'px');
|
83 |
+
}
|
84 |
+
|
85 |
+
if(!opts.fade_panels) {
|
86 |
+
j_panels.hide().eq(i%item_count).show();
|
87 |
+
}
|
88 |
+
$('img.nav-prev').click(showPrevItem);
|
89 |
+
$('img.nav-next').click(showNextItem);
|
90 |
+
enableFrameClicking();
|
91 |
+
});
|
92 |
+
} else if(slide_method=='pointer') {
|
93 |
+
//Stop pointer if it's currently in motion
|
94 |
+
j_pointer.stop();
|
95 |
+
//Get position of target frame
|
96 |
+
var pos = getPos(j_frames[i]);
|
97 |
+
//Slide the pointer over the target frame
|
98 |
+
j_pointer.animate({
|
99 |
+
'left':(pos.left-2+'px')
|
100 |
+
},opts.transition_speed,opts.easing,function(){
|
101 |
+
if(!opts.fade_panels) {
|
102 |
+
j_panels.hide().eq(i%item_count).show();
|
103 |
+
}
|
104 |
+
$('img.nav-prev').click(showPrevItem);
|
105 |
+
$('img.nav-next').click(showNextItem);
|
106 |
+
enableFrameClicking();
|
107 |
+
});
|
108 |
+
}
|
109 |
+
|
110 |
+
if($('a',j_frames[i])[0]) {
|
111 |
+
j_pointer.unbind('click').click(function(){
|
112 |
+
var a = $('a',j_frames[i]).eq(0);
|
113 |
+
if(a.attr('target')=='_blank') {window.open(a.attr('href'));}
|
114 |
+
else {location.href = a.attr('href');}
|
115 |
+
});
|
116 |
+
}
|
117 |
+
}
|
118 |
+
};
|
119 |
+
function showNextItem() {
|
120 |
+
$(document).stopTime("transition");
|
121 |
+
if(++iterator==j_frames.length) {iterator=0;}
|
122 |
+
showItem(iterator);
|
123 |
+
$(document).everyTime(opts.transition_interval,"transition",function(){
|
124 |
+
showNextItem();
|
125 |
+
});
|
126 |
+
};
|
127 |
+
function showPrevItem() {
|
128 |
+
$(document).stopTime("transition");
|
129 |
+
if(--iterator<0) {iterator = item_count-1;}
|
130 |
+
//alert(iterator);
|
131 |
+
showItem(iterator);
|
132 |
+
$(document).everyTime(opts.transition_interval,"transition",function(){
|
133 |
+
showNextItem();
|
134 |
+
});
|
135 |
+
};
|
136 |
+
function getPos(el) {
|
137 |
+
var left = 0, top = 0;
|
138 |
+
var el_id = el.id;
|
139 |
+
if(el.offsetParent) {
|
140 |
+
do {
|
141 |
+
left += el.offsetLeft;
|
142 |
+
top += el.offsetTop;
|
143 |
+
} while(el = el.offsetParent);
|
144 |
+
}
|
145 |
+
//If we want the position of the gallery itself, return it
|
146 |
+
if(el_id == id) {return {'left':left,'top':top};}
|
147 |
+
//Otherwise, get position of element relative to gallery
|
148 |
+
else {
|
149 |
+
var gPos = getPos(j_gallery[0]);
|
150 |
+
var gLeft = gPos.left;
|
151 |
+
var gTop = gPos.top;
|
152 |
+
|
153 |
+
return {'left':left-gLeft,'top':top-gTop};
|
154 |
+
}
|
155 |
+
};
|
156 |
+
function enableFrameClicking() {
|
157 |
+
j_frames.each(function(i){
|
158 |
+
//If there isn't a link in this frame, set up frame to slide on click
|
159 |
+
//Frames with links will handle themselves
|
160 |
+
if($('a',this).length==0) {
|
161 |
+
$(this).click(function(){
|
162 |
+
$(document).stopTime("transition");
|
163 |
+
showItem(i);
|
164 |
+
iterator = i;
|
165 |
+
$(document).everyTime(opts.transition_interval,"transition",function(){
|
166 |
+
showNextItem();
|
167 |
+
});
|
168 |
+
});
|
169 |
+
}
|
170 |
+
});
|
171 |
+
};
|
172 |
+
|
173 |
+
function buildPanels() {
|
174 |
+
//If there are panel captions, add overlay divs
|
175 |
+
if($('.panel-overlay').length>0) {j_panels.append('<div class="overlay"></div>');}
|
176 |
+
|
177 |
+
if(!has_filmstrip) {
|
178 |
+
//Add navigation buttons
|
179 |
+
$('<img />').addClass('nav-next').attr('src',img_path+opts.nav_theme+'/next.png').appendTo(j_gallery).css({
|
180 |
+
'position':'absolute',
|
181 |
+
'zIndex':'1100',
|
182 |
+
'cursor':'pointer',
|
183 |
+
'top':((opts.panel_height-22)/2)+'px',
|
184 |
+
'right':'10px',
|
185 |
+
'display':'none'
|
186 |
+
}).click(showNextItem);
|
187 |
+
$('<img />').addClass('nav-prev').attr('src',img_path+opts.nav_theme+'/prev.png').appendTo(j_gallery).css({
|
188 |
+
'position':'absolute',
|
189 |
+
'zIndex':'1100',
|
190 |
+
'cursor':'pointer',
|
191 |
+
'top':((opts.panel_height-22)/2)+'px',
|
192 |
+
'left':'10px',
|
193 |
+
'display':'none'
|
194 |
+
}).click(showPrevItem);
|
195 |
+
|
196 |
+
$('<img />').addClass('nav-overlay').attr('src',img_path+opts.nav_theme+'/panel-nav-next.png').appendTo(j_gallery).css({
|
197 |
+
'position':'absolute',
|
198 |
+
'zIndex':'1099',
|
199 |
+
'top':((opts.panel_height-22)/2)-10+'px',
|
200 |
+
'right':'0',
|
201 |
+
'display':'none'
|
202 |
+
});
|
203 |
+
|
204 |
+
$('<img />').addClass('nav-overlay').attr('src',img_path+opts.nav_theme+'/panel-nav-prev.png').appendTo(j_gallery).css({
|
205 |
+
'position':'absolute',
|
206 |
+
'zIndex':'1099',
|
207 |
+
'top':((opts.panel_height-22)/2)-10+'px',
|
208 |
+
'left':'0',
|
209 |
+
'display':'none'
|
210 |
+
});
|
211 |
+
}
|
212 |
+
j_panels.css({
|
213 |
+
'width':(opts.panel_width-parseInt(j_panels.css('paddingLeft').split('px')[0],10)-parseInt(j_panels.css('paddingRight').split('px')[0],10))+'px',
|
214 |
+
'height':(opts.panel_height-parseInt(j_panels.css('paddingTop').split('px')[0],10)-parseInt(j_panels.css('paddingBottom').split('px')[0],10))+'px',
|
215 |
+
'position':'absolute',
|
216 |
+
'top':(opts.filmstrip_position=='top'?(opts.frame_height+frame_margin_top+(opts.show_captions?frame_caption_size:frame_margin_top))+'px':'0px'),
|
217 |
+
'left':'0px',
|
218 |
+
'overflow':'hidden',
|
219 |
+
'background':'white',
|
220 |
+
'display':'none'
|
221 |
+
});
|
222 |
+
$('.panel-overlay',j_panels).css({
|
223 |
+
'position':'absolute',
|
224 |
+
'zIndex':'999',
|
225 |
+
'width':(opts.panel_width-20)+'px',
|
226 |
+
'height':opts.overlay_height+'px',
|
227 |
+
'top':(opts.overlay_position=='top'?'0':opts.panel_height-opts.overlay_height+'px'),
|
228 |
+
'left':'0',
|
229 |
+
'padding':'0 10px',
|
230 |
+
'color':opts.overlay_text_color,
|
231 |
+
'fontSize':opts.overlay_font_size
|
232 |
+
});
|
233 |
+
$('.panel-overlay a',j_panels).css({
|
234 |
+
'color':opts.overlay_text_color,
|
235 |
+
'textDecoration':'underline',
|
236 |
+
'fontWeight':'bold'
|
237 |
+
});
|
238 |
+
$('.overlay',j_panels).css({
|
239 |
+
'position':'absolute',
|
240 |
+
'zIndex':'998',
|
241 |
+
'width':opts.panel_width+'px',
|
242 |
+
'height':opts.overlay_height+'px',
|
243 |
+
'top':(opts.overlay_position=='top'?'0':opts.panel_height-opts.overlay_height+'px'),
|
244 |
+
'left':'0',
|
245 |
+
'background':opts.overlay_color,
|
246 |
+
'opacity':opts.overlay_opacity
|
247 |
+
});
|
248 |
+
$('.panel iframe',j_panels).css({
|
249 |
+
'width':opts.panel_width+'px',
|
250 |
+
'height':(opts.panel_height-opts.overlay_height)+'px',
|
251 |
+
'border':'0'
|
252 |
+
});
|
253 |
+
};
|
254 |
+
|
255 |
+
function buildFilmstrip() {
|
256 |
+
//Add wrapper to filmstrip to hide extra frames
|
257 |
+
j_filmstrip.wrap('<div class="strip_wrapper"></div>');
|
258 |
+
if(slide_method=='strip') {
|
259 |
+
j_frames.clone().appendTo(j_filmstrip);
|
260 |
+
j_frames.clone().appendTo(j_filmstrip);
|
261 |
+
j_frames = $('li',j_filmstrip);
|
262 |
+
}
|
263 |
+
//If captions are enabled, add caption divs and fill with the image titles
|
264 |
+
if(opts.show_captions) {
|
265 |
+
j_frames.append('<div class="caption"></div>').each(function(i){
|
266 |
+
$(this).find('.caption').html($(this).find('img').attr('title'));
|
267 |
+
});
|
268 |
+
}
|
269 |
+
|
270 |
+
j_filmstrip.css({
|
271 |
+
'listStyle':'none',
|
272 |
+
'margin':'0',
|
273 |
+
'padding':'0',
|
274 |
+
'width':strip_width+'px',
|
275 |
+
'position':'absolute',
|
276 |
+
'zIndex':'900',
|
277 |
+
'top':'0',
|
278 |
+
'left':'0',
|
279 |
+
'height':(opts.frame_height+10)+'px',
|
280 |
+
'background':opts.background_color
|
281 |
+
});
|
282 |
+
j_frames.css({
|
283 |
+
'float':'left',
|
284 |
+
'position':'relative',
|
285 |
+
'height':opts.frame_height+'px',
|
286 |
+
'zIndex':'901',
|
287 |
+
'marginTop':frame_margin_top+'px',
|
288 |
+
'marginBottom':'0px',
|
289 |
+
'marginRight':frame_margin+'px',
|
290 |
+
'padding':'0',
|
291 |
+
'cursor':'pointer'
|
292 |
+
});
|
293 |
+
$('img',j_frames).css({
|
294 |
+
'border':'none'
|
295 |
+
});
|
296 |
+
$('.strip_wrapper',j_gallery).css({
|
297 |
+
'position':'absolute',
|
298 |
+
'top':(opts.filmstrip_position=='top'?'0px':opts.panel_height+'px'),
|
299 |
+
'left':((gallery_width-wrapper_width)/2)+'px',
|
300 |
+
'width':wrapper_width+'px',
|
301 |
+
'height':(opts.frame_height+frame_margin_top+(opts.show_captions?frame_caption_size:frame_margin_top))+'px',
|
302 |
+
'overflow':'hidden'
|
303 |
+
});
|
304 |
+
$('.caption',j_gallery).css({
|
305 |
+
'position':'absolute',
|
306 |
+
'top':opts.frame_height+'px',
|
307 |
+
'left':'0',
|
308 |
+
'margin':'0',
|
309 |
+
'width':opts.frame_width+'px',
|
310 |
+
'padding':'0',
|
311 |
+
'color':opts.caption_text_color,
|
312 |
+
'textAlign':'center',
|
313 |
+
'fontSize':'10px',
|
314 |
+
'height':frame_caption_size+'px',
|
315 |
+
|
316 |
+
'lineHeight':frame_caption_size+'px'
|
317 |
+
});
|
318 |
+
var pointer = $('<div></div>');
|
319 |
+
pointer.attr('id','pointer').appendTo(j_gallery).css({
|
320 |
+
'position':'absolute',
|
321 |
+
'zIndex':'1000',
|
322 |
+
'cursor':'pointer',
|
323 |
+
'top':getPos(j_frames[0]).top-(pointer_width/2)+'px',
|
324 |
+
'left':getPos(j_frames[0]).left-(pointer_width/2)+'px',
|
325 |
+
'height':opts.frame_height-pointer_width+'px',
|
326 |
+
'width':opts.frame_width-pointer_width+'px',
|
327 |
+
'border':(has_panels?pointer_width+'px solid '+(opts.nav_theme=='dark'?'black':'white'):'none')
|
328 |
+
});
|
329 |
+
j_pointer = $('#pointer',j_gallery);
|
330 |
+
if(has_panels) {
|
331 |
+
var pointerArrow = $('<img />');
|
332 |
+
pointerArrow.attr('src',img_path+opts.nav_theme+'/pointer'+(opts.filmstrip_position=='top'?'-down':'')+'.png').appendTo($('#pointer')).css({
|
333 |
+
'position':'absolute',
|
334 |
+
'zIndex':'1001',
|
335 |
+
'top':(opts.filmstrip_position=='bottom'?'-'+(10+pointer_width)+'px':opts.frame_height+'px'),
|
336 |
+
'left':((opts.frame_width/2)-10)+'px'
|
337 |
+
});
|
338 |
+
}
|
339 |
+
|
340 |
+
//If the filmstrip is animating, move the strip to the middle third
|
341 |
+
if(slide_method=='strip') {
|
342 |
+
j_filmstrip.css('left','-'+((opts.frame_width+frame_margin)*item_count)+'px');
|
343 |
+
iterator = item_count;
|
344 |
+
}
|
345 |
+
//If there's a link under the pointer, enable clicking on the pointer
|
346 |
+
if($('a',j_frames[iterator])[0]) {
|
347 |
+
j_pointer.click(function(){
|
348 |
+
var a = $('a',j_frames[iterator]).eq(0);
|
349 |
+
if(a.attr('target')=='_blank') {window.open(a.attr('href'));}
|
350 |
+
else {location.href = a.attr('href');}
|
351 |
+
});
|
352 |
+
}
|
353 |
+
|
354 |
+
//Add navigation buttons
|
355 |
+
$('<img />').addClass('nav-next').attr('src',img_path+opts.nav_theme+'/next.png').appendTo(j_gallery).css({
|
356 |
+
'position':'absolute',
|
357 |
+
'cursor':'pointer',
|
358 |
+
'top':(opts.filmstrip_position=='top'?0:opts.panel_height)+frame_margin_top+((opts.frame_height-22)/2)+'px',
|
359 |
+
'right':(gallery_width/2)-(wrapper_width/2)-10-22+'px'
|
360 |
+
}).click(showNextItem);
|
361 |
+
$('<img />').addClass('nav-prev').attr('src',img_path+opts.nav_theme+'/prev.png').appendTo(j_gallery).css({
|
362 |
+
'position':'absolute',
|
363 |
+
'cursor':'pointer',
|
364 |
+
'top':(opts.filmstrip_position=='top'?0:opts.panel_height)+frame_margin_top+((opts.frame_height-22)/2)+'px',
|
365 |
+
'left':(gallery_width/2)-(wrapper_width/2)-10-22+'px'
|
366 |
+
}).click(showPrevItem);
|
367 |
+
};
|
368 |
+
|
369 |
+
//Check mouse to see if it is within the borders of the panel
|
370 |
+
//More reliable than 'mouseover' event when elements overlay the panel
|
371 |
+
function mouseIsOverPanels(x,y) {
|
372 |
+
var pos = getPos(j_gallery[0]);
|
373 |
+
var top = pos.top;
|
374 |
+
var left = pos.left;
|
375 |
+
return x > left && x < left+opts.panel_width && y > top && y < top+opts.panel_height;
|
376 |
+
};
|
377 |
+
|
378 |
+
/************************************************/
|
379 |
+
/* Main Plugin Code */
|
380 |
+
/************************************************/
|
381 |
+
return this.each(function() {
|
382 |
+
j_gallery = $(this);
|
383 |
+
//Determine path between current page and filmstrip images
|
384 |
+
//Scan script tags and look for path to GalleryView plugin
|
385 |
+
$('script').each(function(i){
|
386 |
+
var s = $(this);
|
387 |
+
if(s.attr('src') && s.attr('src').match(/jquery\.galleryview/)){
|
388 |
+
img_path = s.attr('src').split('jquery.galleryview')[0]+'themes/';
|
389 |
+
}
|
390 |
+
});
|
391 |
+
|
392 |
+
//Hide gallery to prevent Flash of Unstyled Content (FoUC) in IE
|
393 |
+
j_gallery.css('visibility','hidden');
|
394 |
+
|
395 |
+
//Assign elements to variables for reuse
|
396 |
+
j_filmstrip = $('.filmstrip',j_gallery);
|
397 |
+
j_frames = $('li',j_filmstrip);
|
398 |
+
j_panels = $('.panel',j_gallery);
|
399 |
+
|
400 |
+
id = j_gallery.attr('id');
|
401 |
+
|
402 |
+
has_panels = j_panels.length > 0;
|
403 |
+
has_filmstrip = j_frames.length > 0;
|
404 |
+
|
405 |
+
if(!has_panels) opts.panel_height = 0;
|
406 |
+
|
407 |
+
//Number of frames in filmstrip
|
408 |
+
item_count = has_panels?j_panels.length:j_frames.length;
|
409 |
+
|
410 |
+
//Number of frames that can display within the screen's width
|
411 |
+
//64 = width of block for navigation button * 2
|
412 |
+
//5 = minimum frame margin
|
413 |
+
strip_size = has_panels?Math.floor((opts.panel_width-64)/(opts.frame_width+frame_margin)):Math.min(item_count,opts.filmstrip_size);
|
414 |
+
|
415 |
+
|
416 |
+
/************************************************/
|
417 |
+
/* Determine transition method for filmstrip */
|
418 |
+
/************************************************/
|
419 |
+
//If more items than strip size, slide filmstrip
|
420 |
+
//Otherwise, slide pointer
|
421 |
+
if(strip_size >= item_count) {
|
422 |
+
slide_method = 'pointer';
|
423 |
+
strip_size = item_count;
|
424 |
+
}
|
425 |
+
else {slide_method = 'strip';}
|
426 |
+
|
427 |
+
/************************************************/
|
428 |
+
/* Determine dimensions of various elements */
|
429 |
+
/************************************************/
|
430 |
+
|
431 |
+
//Width of gallery block
|
432 |
+
gallery_width = has_panels?opts.panel_width:(strip_size*(opts.frame_width+frame_margin))-frame_margin+64;
|
433 |
+
|
434 |
+
//Height of gallery block = screen + filmstrip + captions (optional)
|
435 |
+
gallery_height = (has_panels?opts.panel_height:0)+(has_filmstrip?opts.frame_height+frame_margin_top+(opts.show_captions?frame_caption_size:frame_margin_top):0);
|
436 |
+
|
437 |
+
//Width of filmstrip
|
438 |
+
if(slide_method == 'pointer') {strip_width = (opts.frame_width*item_count)+(frame_margin*(item_count));}
|
439 |
+
else {strip_width = (opts.frame_width*item_count*3)+(frame_margin*(item_count*3));}
|
440 |
+
|
441 |
+
//Width of filmstrip wrapper (to hide overflow)
|
442 |
+
wrapper_width = ((strip_size*opts.frame_width)+((strip_size-1)*frame_margin));
|
443 |
+
|
444 |
+
/************************************************/
|
445 |
+
/* Apply CSS Styles */
|
446 |
+
/************************************************/
|
447 |
+
j_gallery.css({
|
448 |
+
'position':'relative',
|
449 |
+
'margin':'0',
|
450 |
+
'background':opts.background_color,
|
451 |
+
'border':opts.border,
|
452 |
+
'width':gallery_width+'px',
|
453 |
+
'height':gallery_height+'px'
|
454 |
+
});
|
455 |
+
|
456 |
+
/************************************************/
|
457 |
+
/* Build filmstrip and/or panels */
|
458 |
+
/************************************************/
|
459 |
+
if(has_filmstrip) {
|
460 |
+
buildFilmstrip();
|
461 |
+
}
|
462 |
+
if(has_panels) {
|
463 |
+
buildPanels();
|
464 |
+
}
|
465 |
+
|
466 |
+
|
467 |
+
/************************************************/
|
468 |
+
/* Add events to various elements */
|
469 |
+
/************************************************/
|
470 |
+
if(has_filmstrip) enableFrameClicking();
|
471 |
+
|
472 |
+
|
473 |
+
|
474 |
+
$().mousemove(function(e){
|
475 |
+
if(mouseIsOverPanels(e.pageX,e.pageY)) {
|
476 |
+
if(opts.pause_on_hover) {
|
477 |
+
$(document).oneTime(500,"animation_pause",function(){
|
478 |
+
$(document).stopTime("transition");
|
479 |
+
paused=true;
|
480 |
+
});
|
481 |
+
}
|
482 |
+
if(has_panels && !has_filmstrip) {
|
483 |
+
$('.nav-overlay').fadeIn('fast');
|
484 |
+
$('.nav-next').fadeIn('fast');
|
485 |
+
$('.nav-prev').fadeIn('fast');
|
486 |
+
}
|
487 |
+
} else {
|
488 |
+
if(opts.pause_on_hover) {
|
489 |
+
$(document).stopTime("animation_pause");
|
490 |
+
if(paused) {
|
491 |
+
$(document).everyTime(opts.transition_interval,"transition",function(){
|
492 |
+
showNextItem();
|
493 |
+
});
|
494 |
+
paused = false;
|
495 |
+
}
|
496 |
+
}
|
497 |
+
if(has_panels && !has_filmstrip) {
|
498 |
+
$('.nav-overlay').fadeOut('fast');
|
499 |
+
$('.nav-next').fadeOut('fast');
|
500 |
+
$('.nav-prev').fadeOut('fast');
|
501 |
+
}
|
502 |
+
}
|
503 |
+
});
|
504 |
+
|
505 |
+
|
506 |
+
/************************************************/
|
507 |
+
/* Initiate Automated Animation */
|
508 |
+
/************************************************/
|
509 |
+
//Show the first panel
|
510 |
+
j_panels.eq(0).show();
|
511 |
+
|
512 |
+
//If we have more than one item, begin automated transitions
|
513 |
+
if(item_count > 1) {
|
514 |
+
$(document).everyTime(opts.transition_interval,"transition",function(){
|
515 |
+
showNextItem();
|
516 |
+
});
|
517 |
+
}
|
518 |
+
|
519 |
+
//Make gallery visible now that work is complete
|
520 |
+
j_gallery.css('visibility','visible');
|
521 |
+
});
|
522 |
+
};
|
523 |
+
|
524 |
+
$.fn.galleryView.defaults = {
|
525 |
+
panel_width: 400,
|
526 |
+
panel_height: 300,
|
527 |
+
frame_width: 80,
|
528 |
+
frame_height: 80,
|
529 |
+
filmstrip_size: 3,
|
530 |
+
overlay_height: 70,
|
531 |
+
overlay_font_size: '1em',
|
532 |
+
transition_speed: 400,
|
533 |
+
transition_interval: 6000,
|
534 |
+
overlay_opacity: 0.6,
|
535 |
+
overlay_color: 'black',
|
536 |
+
background_color: 'black',
|
537 |
+
overlay_text_color: 'white',
|
538 |
+
caption_text_color: 'white',
|
539 |
+
border: '1px solid black',
|
540 |
+
nav_theme: 'light',
|
541 |
+
easing: 'swing',
|
542 |
+
filmstrip_position: 'bottom',
|
543 |
+
overlay_position: 'bottom',
|
544 |
+
show_captions: false,
|
545 |
+
fade_panels: true,
|
546 |
+
pause_on_hover: false
|
547 |
+
};
|
548 |
+
})(jQuery);
|
skin/frontend/default/freepop/js/galleryview/jquery.timers-1.1.2.js
ADDED
@@ -0,0 +1,147 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* jQuery.timers - Timer abstractions for jQuery
|
3 |
+
* Written by Blair Mitchelmore (blair DOT mitchelmore AT gmail DOT com)
|
4 |
+
* Licensed under the WTFPL (http://sam.zoy.org/wtfpl/).
|
5 |
+
* Date: 2009/02/08
|
6 |
+
*
|
7 |
+
* @author Blair Mitchelmore
|
8 |
+
* @version 1.1.2
|
9 |
+
*
|
10 |
+
**/
|
11 |
+
|
12 |
+
jQuery.fn.extend({
|
13 |
+
everyTime: function(interval, label, fn, times, belay) {
|
14 |
+
return this.each(function() {
|
15 |
+
jQuery.timer.add(this, interval, label, fn, times, belay);
|
16 |
+
});
|
17 |
+
},
|
18 |
+
oneTime: function(interval, label, fn) {
|
19 |
+
return this.each(function() {
|
20 |
+
jQuery.timer.add(this, interval, label, fn, 1);
|
21 |
+
});
|
22 |
+
},
|
23 |
+
stopTime: function(label, fn) {
|
24 |
+
return this.each(function() {
|
25 |
+
jQuery.timer.remove(this, label, fn);
|
26 |
+
});
|
27 |
+
}
|
28 |
+
});
|
29 |
+
|
30 |
+
jQuery.event.special
|
31 |
+
|
32 |
+
jQuery.extend({
|
33 |
+
timer: {
|
34 |
+
global: [],
|
35 |
+
guid: 1,
|
36 |
+
dataKey: "jQuery.timer",
|
37 |
+
regex: /^([0-9]+(?:\.[0-9]*)?)\s*(.*s)?$/,
|
38 |
+
powers: {
|
39 |
+
// Yeah this is major overkill...
|
40 |
+
'ms': 1,
|
41 |
+
'cs': 10,
|
42 |
+
'ds': 100,
|
43 |
+
's': 1000,
|
44 |
+
'das': 10000,
|
45 |
+
'hs': 100000,
|
46 |
+
'ks': 1000000
|
47 |
+
},
|
48 |
+
timeParse: function(value) {
|
49 |
+
if (value == undefined || value == null)
|
50 |
+
return null;
|
51 |
+
var result = this.regex.exec(jQuery.trim(value.toString()));
|
52 |
+
if (result[2]) {
|
53 |
+
var num = parseFloat(result[1]);
|
54 |
+
var mult = this.powers[result[2]] || 1;
|
55 |
+
return num * mult;
|
56 |
+
} else {
|
57 |
+
return value;
|
58 |
+
}
|
59 |
+
},
|
60 |
+
add: function(element, interval, label, fn, times, belay) {
|
61 |
+
var counter = 0;
|
62 |
+
|
63 |
+
if (jQuery.isFunction(label)) {
|
64 |
+
if (!times)
|
65 |
+
times = fn;
|
66 |
+
fn = label;
|
67 |
+
label = interval;
|
68 |
+
}
|
69 |
+
|
70 |
+
interval = jQuery.timer.timeParse(interval);
|
71 |
+
|
72 |
+
if (typeof interval != 'number' || isNaN(interval) || interval <= 0)
|
73 |
+
return;
|
74 |
+
|
75 |
+
if (times && times.constructor != Number) {
|
76 |
+
belay = !!times;
|
77 |
+
times = 0;
|
78 |
+
}
|
79 |
+
|
80 |
+
times = times || 0;
|
81 |
+
belay = belay || false;
|
82 |
+
|
83 |
+
var timers = jQuery.data(element, this.dataKey) || jQuery.data(element, this.dataKey, {});
|
84 |
+
|
85 |
+
if (!timers[label])
|
86 |
+
timers[label] = {};
|
87 |
+
|
88 |
+
fn.timerID = fn.timerID || this.guid++;
|
89 |
+
|
90 |
+
var handler = function() {
|
91 |
+
if (belay && this.inProgress)
|
92 |
+
return;
|
93 |
+
this.inProgress = true;
|
94 |
+
if ((++counter > times && times !== 0) || fn.call(element, counter) === false)
|
95 |
+
jQuery.timer.remove(element, label, fn);
|
96 |
+
this.inProgress = false;
|
97 |
+
};
|
98 |
+
|
99 |
+
handler.timerID = fn.timerID;
|
100 |
+
|
101 |
+
if (!timers[label][fn.timerID])
|
102 |
+
timers[label][fn.timerID] = window.setInterval(handler,interval);
|
103 |
+
|
104 |
+
this.global.push( element );
|
105 |
+
|
106 |
+
},
|
107 |
+
remove: function(element, label, fn) {
|
108 |
+
var timers = jQuery.data(element, this.dataKey), ret;
|
109 |
+
|
110 |
+
if ( timers ) {
|
111 |
+
|
112 |
+
if (!label) {
|
113 |
+
for ( label in timers )
|
114 |
+
this.remove(element, label, fn);
|
115 |
+
} else if ( timers[label] ) {
|
116 |
+
if ( fn ) {
|
117 |
+
if ( fn.timerID ) {
|
118 |
+
window.clearInterval(timers[label][fn.timerID]);
|
119 |
+
delete timers[label][fn.timerID];
|
120 |
+
}
|
121 |
+
} else {
|
122 |
+
for ( var fn in timers[label] ) {
|
123 |
+
window.clearInterval(timers[label][fn]);
|
124 |
+
delete timers[label][fn];
|
125 |
+
}
|
126 |
+
}
|
127 |
+
|
128 |
+
for ( ret in timers[label] ) break;
|
129 |
+
if ( !ret ) {
|
130 |
+
ret = null;
|
131 |
+
delete timers[label];
|
132 |
+
}
|
133 |
+
}
|
134 |
+
|
135 |
+
for ( ret in timers ) break;
|
136 |
+
if ( !ret )
|
137 |
+
jQuery.removeData(element, this.dataKey);
|
138 |
+
}
|
139 |
+
}
|
140 |
+
}
|
141 |
+
});
|
142 |
+
|
143 |
+
jQuery(window).bind("unload", function() {
|
144 |
+
jQuery.each(jQuery.timer.global, function(index, item) {
|
145 |
+
jQuery.timer.remove(item);
|
146 |
+
});
|
147 |
+
});
|
skin/frontend/default/freepop/js/galleryview/themes/.DS_Store
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/dark/Thumbs.db
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/dark/next.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/dark/panel-nav-next.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/dark/panel-nav-prev.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/dark/pointer-down.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/dark/pointer.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/dark/prev.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/light/next.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/light/panel-nav-next.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/light/panel-nav-prev.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/light/pointer-down.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/light/pointer.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/galleryview/themes/light/prev.png
ADDED
Binary file
|
skin/frontend/default/freepop/js/testimonial/jquery-1.3.2.min.js
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* jQuery JavaScript Library v1.3.2
|
3 |
+
* http://jquery.com/
|
4 |
+
*
|
5 |
+
* Copyright (c) 2009 John Resig
|
6 |
+
* Dual licensed under the MIT and GPL licenses.
|
7 |
+
* http://docs.jquery.com/License
|
8 |
+
*
|
9 |
+
* Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
|
10 |
+
* Revision: 6246
|
11 |
+
*/
|
12 |
+
(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}});
|
13 |
+
/*
|
14 |
+
* Sizzle CSS Selector Engine - v0.9.3
|
15 |
+
* Copyright 2009, The Dojo Foundation
|
16 |
+
* Released under the MIT, BSD, and GPL Licenses.
|
17 |
+
* More information: http://sizzlejs.com/
|
18 |
+
*/
|
19 |
+
(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
|
skin/frontend/default/freepop/js/testimonial/jquery.cycle.js
ADDED
@@ -0,0 +1,750 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* jQuery Cycle Plugin for light-weight slideshows
|
3 |
+
* Examples and documentation at: http://malsup.com/jquery/cycle/
|
4 |
+
* Copyright (c) 2007-2008 M. Alsup
|
5 |
+
* Version: 2.18 (05/06/2008)
|
6 |
+
* Dual licensed under the MIT and GPL licenses:
|
7 |
+
* http://www.opensource.org/licenses/mit-license.php
|
8 |
+
* http://www.gnu.org/licenses/gpl.html
|
9 |
+
* Requires: jQuery v1.1.3.1 or later
|
10 |
+
*
|
11 |
+
* Based on the work of:
|
12 |
+
* 1) Matt Oakes (http://portfolio.gizone.co.uk/applications/slideshow/)
|
13 |
+
* 2) Torsten Baldes (http://medienfreunde.com/lab/innerfade/)
|
14 |
+
* 3) Benjamin Sterling (http://www.benjaminsterling.com/experiments/jqShuffle/)
|
15 |
+
*/
|
16 |
+
(function($) {
|
17 |
+
|
18 |
+
var ver = '2.18';
|
19 |
+
var ie6 = $.browser.msie && /MSIE 6.0/.test(navigator.userAgent);
|
20 |
+
|
21 |
+
function log() {
|
22 |
+
if (window.console && window.console.log)
|
23 |
+
window.console.log('[cycle] ' + Array.prototype.join.call(arguments,''));
|
24 |
+
};
|
25 |
+
|
26 |
+
$.fn.cycle = function(options) {
|
27 |
+
return this.each(function() {
|
28 |
+
options = options || {};
|
29 |
+
if (options.constructor == String) {
|
30 |
+
switch(options) {
|
31 |
+
case 'stop':
|
32 |
+
if (this.cycleTimeout) clearTimeout(this.cycleTimeout);
|
33 |
+
this.cycleTimeout = 0;
|
34 |
+
return;
|
35 |
+
case 'pause':
|
36 |
+
this.cyclePause = 1;
|
37 |
+
return;
|
38 |
+
case 'resume':
|
39 |
+
this.cyclePause = 0;
|
40 |
+
return;
|
41 |
+
default:
|
42 |
+
options = { fx: options };
|
43 |
+
};
|
44 |
+
}
|
45 |
+
|
46 |
+
// stop existing slideshow for this container (if there is one)
|
47 |
+
if (this.cycleTimeout) clearTimeout(this.cycleTimeout);
|
48 |
+
this.cycleTimeout = 0;
|
49 |
+
this.cyclePause = 0;
|
50 |
+
|
51 |
+
var $cont = $(this);
|
52 |
+
var $slides = options.slideExpr ? $(options.slideExpr, this) : $cont.children();
|
53 |
+
var els = $slides.get();
|
54 |
+
if (els.length < 2) {
|
55 |
+
log('terminating; too few slides: ' + els.length);
|
56 |
+
return; // don't bother
|
57 |
+
}
|
58 |
+
|
59 |
+
// support metadata plugin (v1.0 and v2.0)
|
60 |
+
var opts = $.extend({}, $.fn.cycle.defaults, options || {}, $.metadata ? $cont.metadata() : $.meta ? $cont.data() : {});
|
61 |
+
if (opts.autostop)
|
62 |
+
opts.countdown = opts.autostopCount || els.length;
|
63 |
+
|
64 |
+
opts.before = opts.before ? [opts.before] : [];
|
65 |
+
opts.after = opts.after ? [opts.after] : [];
|
66 |
+
opts.after.unshift(function(){ opts.busy=0; });
|
67 |
+
if (opts.continuous)
|
68 |
+
opts.after.push(function() { go(els,opts,0,!opts.rev); });
|
69 |
+
|
70 |
+
// clearType corrections
|
71 |
+
if (ie6 && opts.cleartype && !opts.cleartypeNoBg)
|
72 |
+
clearTypeFix($slides);
|
73 |
+
|
74 |
+
// allow shorthand overrides of width, height and timeout
|
75 |
+
var cls = this.className;
|
76 |
+
opts.width = parseInt((cls.match(/w:(\d+)/)||[])[1]) || opts.width;
|
77 |
+
opts.height = parseInt((cls.match(/h:(\d+)/)||[])[1]) || opts.height;
|
78 |
+
opts.timeout = parseInt((cls.match(/t:(\d+)/)||[])[1]) || opts.timeout;
|
79 |
+
|
80 |
+
if ($cont.css('position') == 'static')
|
81 |
+
$cont.css('position', 'relative');
|
82 |
+
if (opts.width)
|
83 |
+
$cont.width(opts.width);
|
84 |
+
if (opts.height && opts.height != 'auto')
|
85 |
+
$cont.height(opts.height);
|
86 |
+
|
87 |
+
if (opts.random) {
|
88 |
+
opts.randomMap = [];
|
89 |
+
for (var i = 0; i < els.length; i++)
|
90 |
+
opts.randomMap.push(i);
|
91 |
+
opts.randomMap.sort(function(a,b) {return Math.random() - 0.5;});
|
92 |
+
opts.randomIndex = 0;
|
93 |
+
opts.startingSlide = opts.randomMap[0];
|
94 |
+
}
|
95 |
+
else if (opts.startingSlide >= els.length)
|
96 |
+
opts.startingSlide = 0; // catch bogus input
|
97 |
+
var first = opts.startingSlide || 0;
|
98 |
+
$slides.css({position: 'absolute', top:0, left:0}).hide().each(function(i) {
|
99 |
+
var z = first ? i >= first ? els.length - (i-first) : first-i : els.length-i;
|
100 |
+
$(this).css('z-index', z)
|
101 |
+
});
|
102 |
+
|
103 |
+
$(els[first]).css('opacity',1).show(); // opacity bit needed to handle reinit case
|
104 |
+
if ($.browser.msie) els[first].style.removeAttribute('filter');
|
105 |
+
|
106 |
+
if (opts.fit && opts.width)
|
107 |
+
$slides.width(opts.width);
|
108 |
+
if (opts.fit && opts.height && opts.height != 'auto')
|
109 |
+
$slides.height(opts.height);
|
110 |
+
if (opts.pause)
|
111 |
+
$cont.hover(function(){this.cyclePause=1;}, function(){this.cyclePause=0;});
|
112 |
+
|
113 |
+
// run transition init fn
|
114 |
+
var init = $.fn.cycle.transitions[opts.fx];
|
115 |
+
if ($.isFunction(init))
|
116 |
+
init($cont, $slides, opts);
|
117 |
+
else if (opts.fx != 'custom')
|
118 |
+
log('unknown transition: ' + opts.fx);
|
119 |
+
|
120 |
+
$slides.each(function() {
|
121 |
+
var $el = $(this);
|
122 |
+
this.cycleH = (opts.fit && opts.height) ? opts.height : $el.height();
|
123 |
+
this.cycleW = (opts.fit && opts.width) ? opts.width : $el.width();
|
124 |
+
});
|
125 |
+
|
126 |
+
opts.cssBefore = opts.cssBefore || {};
|
127 |
+
opts.animIn = opts.animIn || {};
|
128 |
+
opts.animOut = opts.animOut || {};
|
129 |
+
|
130 |
+
$slides.not(':eq('+first+')').css(opts.cssBefore);
|
131 |
+
if (opts.cssFirst)
|
132 |
+
$($slides[first]).css(opts.cssFirst);
|
133 |
+
|
134 |
+
if (opts.timeout) {
|
135 |
+
// ensure that timeout and speed settings are sane
|
136 |
+
if (opts.speed.constructor == String)
|
137 |
+
opts.speed = {slow: 600, fast: 200}[opts.speed] || 400;
|
138 |
+
if (!opts.sync)
|
139 |
+
opts.speed = opts.speed / 2;
|
140 |
+
while((opts.timeout - opts.speed) < 250)
|
141 |
+
opts.timeout += opts.speed;
|
142 |
+
}
|
143 |
+
if (opts.easing)
|
144 |
+
opts.easeIn = opts.easeOut = opts.easing;
|
145 |
+
if (!opts.speedIn)
|
146 |
+
opts.speedIn = opts.speed;
|
147 |
+
if (!opts.speedOut)
|
148 |
+
opts.speedOut = opts.speed;
|
149 |
+
|
150 |
+
opts.slideCount = els.length;
|
151 |
+
opts.currSlide = first;
|
152 |
+
if (opts.random) {
|
153 |
+
opts.nextSlide = opts.currSlide;
|
154 |
+
if (++opts.randomIndex == els.length)
|
155 |
+
opts.randomIndex = 0;
|
156 |
+
opts.nextSlide = opts.randomMap[opts.randomIndex];
|
157 |
+
}
|
158 |
+
else
|
159 |
+
opts.nextSlide = opts.startingSlide >= (els.length-1) ? 0 : opts.startingSlide+1;
|
160 |
+
|
161 |
+
// fire artificial events
|
162 |
+
var e0 = $slides[first];
|
163 |
+
if (opts.before.length)
|
164 |
+
opts.before[0].apply(e0, [e0, e0, opts, true]);
|
165 |
+
if (opts.after.length > 1)
|
166 |
+
opts.after[1].apply(e0, [e0, e0, opts, true]);
|
167 |
+
|
168 |
+
if (opts.click && !opts.next)
|
169 |
+
opts.next = opts.click;
|
170 |
+
if (opts.next)
|
171 |
+
$(opts.next).bind('click', function(){return advance(els,opts,opts.rev?-1:1)});
|
172 |
+
if (opts.prev)
|
173 |
+
$(opts.prev).bind('click', function(){return advance(els,opts,opts.rev?1:-1)});
|
174 |
+
if (opts.pager)
|
175 |
+
buildPager(els,opts);
|
176 |
+
if (opts.timeout || opts.continuous)
|
177 |
+
this.cycleTimeout = setTimeout(
|
178 |
+
function(){go(els,opts,0,!opts.rev)},
|
179 |
+
opts.continuous ? 10 : opts.timeout + (opts.delay||0));
|
180 |
+
|
181 |
+
// expose fn for adding slides after the show has started
|
182 |
+
opts.addSlide = function(newSlide) {
|
183 |
+
var $s = $(newSlide), s = $s[0];
|
184 |
+
if (!opts.autostopCount)
|
185 |
+
opts.countdown++;
|
186 |
+
els.push(s);
|
187 |
+
if (opts.els)
|
188 |
+
opts.els.push(s); // shuffle needs this
|
189 |
+
opts.slideCount = els.length;
|
190 |
+
$s.css('position','absolute').css(opts.cssBefore).appendTo($cont);
|
191 |
+
|
192 |
+
if (ie6 && opts.cleartype && !opts.cleartypeNoBg)
|
193 |
+
clearTypeFix($s);
|
194 |
+
|
195 |
+
if (opts.fit && opts.width)
|
196 |
+
$s.width(opts.width);
|
197 |
+
if (opts.fit && opts.height && opts.height != 'auto')
|
198 |
+
$slides.height(opts.height);
|
199 |
+
s.cycleH = (opts.fit && opts.height) ? opts.height : $s.height();
|
200 |
+
s.cycleW = (opts.fit && opts.width) ? opts.width : $s.width();
|
201 |
+
};
|
202 |
+
|
203 |
+
});
|
204 |
+
};
|
205 |
+
|
206 |
+
function go(els, opts, manual, fwd) {
|
207 |
+
if (opts.busy) return;
|
208 |
+
var p = els[0].parentNode, curr = els[opts.currSlide], next = els[opts.nextSlide];
|
209 |
+
if (p.cycleTimeout === 0 && !manual)
|
210 |
+
return;
|
211 |
+
|
212 |
+
if (!manual && !p.cyclePause &&
|
213 |
+
((opts.autostop && (--opts.countdown <= 0)) ||
|
214 |
+
(opts.nowrap && !opts.random && opts.nextSlide < opts.currSlide))) {
|
215 |
+
if (opts.end)
|
216 |
+
opts.end(opts);
|
217 |
+
return;
|
218 |
+
}
|
219 |
+
|
220 |
+
if (manual || !p.cyclePause) {
|
221 |
+
if (opts.before.length)
|
222 |
+
$.each(opts.before, function(i,o) { o.apply(next, [curr, next, opts, fwd]); });
|
223 |
+
var after = function() {
|
224 |
+
if ($.browser.msie && opts.cleartype)
|
225 |
+
this.style.removeAttribute('filter');
|
226 |
+
$.each(opts.after, function(i,o) { o.apply(next, [curr, next, opts, fwd]); });
|
227 |
+
};
|
228 |
+
|
229 |
+
if (opts.nextSlide != opts.currSlide) {
|
230 |
+
opts.busy = 1;
|
231 |
+
if (opts.fxFn)
|
232 |
+
opts.fxFn(curr, next, opts, after, fwd);
|
233 |
+
else if ($.isFunction($.fn.cycle[opts.fx]))
|
234 |
+
$.fn.cycle[opts.fx](curr, next, opts, after);
|
235 |
+
else
|
236 |
+
$.fn.cycle.custom(curr, next, opts, after);
|
237 |
+
}
|
238 |
+
if (opts.random) {
|
239 |
+
opts.currSlide = opts.nextSlide;
|
240 |
+
if (++opts.randomIndex == els.length)
|
241 |
+
opts.randomIndex = 0;
|
242 |
+
opts.nextSlide = opts.randomMap[opts.randomIndex];
|
243 |
+
}
|
244 |
+
else { // sequence
|
245 |
+
var roll = (opts.nextSlide + 1) == els.length;
|
246 |
+
opts.nextSlide = roll ? 0 : opts.nextSlide+1;
|
247 |
+
opts.currSlide = roll ? els.length-1 : opts.nextSlide-1;
|
248 |
+
}
|
249 |
+
if (opts.pager)
|
250 |
+
$(opts.pager).find('a').removeClass('activeSlide').filter('a:eq('+opts.currSlide+')').addClass('activeSlide');
|
251 |
+
}
|
252 |
+
if (opts.timeout && !opts.continuous)
|
253 |
+
p.cycleTimeout = setTimeout(function() { go(els,opts,0,!opts.rev) }, opts.timeout);
|
254 |
+
else if (opts.continuous && p.cyclePause)
|
255 |
+
p.cycleTimeout = setTimeout(function() { go(els,opts,0,!opts.rev) }, 10);
|
256 |
+
};
|
257 |
+
|
258 |
+
// advance slide forward or back
|
259 |
+
function advance(els, opts, val) {
|
260 |
+
var p = els[0].parentNode, timeout = p.cycleTimeout;
|
261 |
+
if (timeout) {
|
262 |
+
clearTimeout(timeout);
|
263 |
+
p.cycleTimeout = 0;
|
264 |
+
}
|
265 |
+
opts.nextSlide = opts.currSlide + val;
|
266 |
+
if (opts.nextSlide < 0) {
|
267 |
+
if (opts.nowrap) return false;
|
268 |
+
opts.nextSlide = els.length - 1;
|
269 |
+
}
|
270 |
+
else if (opts.nextSlide >= els.length) {
|
271 |
+
if (opts.nowrap) return false;
|
272 |
+
opts.nextSlide = 0;
|
273 |
+
}
|
274 |
+
if (opts.prevNextClick && typeof opts.prevNextClick == 'function')
|
275 |
+
opts.prevNextClick(val > 0, opts.nextSlide, els[opts.nextSlide]);
|
276 |
+
go(els, opts, 1, val>=0);
|
277 |
+
return false;
|
278 |
+
};
|
279 |
+
|
280 |
+
function buildPager(els, opts) {
|
281 |
+
var $p = $(opts.pager);
|
282 |
+
$.each(els, function(i,o) {
|
283 |
+
var $a = (typeof opts.pagerAnchorBuilder == 'function')
|
284 |
+
? $(opts.pagerAnchorBuilder(i,o))
|
285 |
+
: $('<a href="#">'+(i+1)+'</a>');
|
286 |
+
// don't reparent if anchor is in the dom
|
287 |
+
if ($a.parents('body').length == 0)
|
288 |
+
$a.appendTo($p);
|
289 |
+
$a.bind(opts.pagerEvent, function() {
|
290 |
+
opts.nextSlide = i;
|
291 |
+
var p = els[0].parentNode, timeout = p.cycleTimeout;
|
292 |
+
if (timeout) {
|
293 |
+
clearTimeout(timeout);
|
294 |
+
p.cycleTimeout = 0;
|
295 |
+
}
|
296 |
+
if (typeof opts.pagerClick == 'function')
|
297 |
+
opts.pagerClick(opts.nextSlide, els[opts.nextSlide]);
|
298 |
+
go(els,opts,1,!opts.rev);
|
299 |
+
return false;
|
300 |
+
});
|
301 |
+
});
|
302 |
+
$p.find('a').filter('a:eq('+opts.startingSlide+')').addClass('activeSlide');
|
303 |
+
};
|
304 |
+
|
305 |
+
// this fixes clearType problems in ie6 by setting an explicit bg color
|
306 |
+
function clearTypeFix($slides) {
|
307 |
+
function hex(s) {
|
308 |
+
s = parseInt(s).toString(16);
|
309 |
+
return s.length < 2 ? '0'+s : s;
|
310 |
+
};
|
311 |
+
function getBg(e) {
|
312 |
+
for ( ; e && e.nodeName.toLowerCase() != 'html'; e = e.parentNode) {
|
313 |
+
var v = $.css(e,'background-color');
|
314 |
+
if (v.indexOf('rgb') >= 0 ) {
|
315 |
+
var rgb = v.match(/\d+/g);
|
316 |
+
return '#'+ hex(rgb[0]) + hex(rgb[1]) + hex(rgb[2]);
|
317 |
+
}
|
318 |
+
if (v && v != 'transparent')
|
319 |
+
return v;
|
320 |
+
}
|
321 |
+
return '#ffffff';
|
322 |
+
};
|
323 |
+
$slides.each(function() { $(this).css('background-color', getBg(this)); });
|
324 |
+
};
|
325 |
+
|
326 |
+
|
327 |
+
$.fn.cycle.custom = function(curr, next, opts, cb) {
|
328 |
+
var $l = $(curr), $n = $(next);
|
329 |
+
$n.css(opts.cssBefore);
|
330 |
+
var fn = function() {$n.animate(opts.animIn, opts.speedIn, opts.easeIn, cb)};
|
331 |
+
$l.animate(opts.animOut, opts.speedOut, opts.easeOut, function() {
|
332 |
+
if (opts.cssAfter) $l.css(opts.cssAfter);
|
333 |
+
if (!opts.sync) fn();
|
334 |
+
});
|
335 |
+
if (opts.sync) fn();
|
336 |
+
};
|
337 |
+
|
338 |
+
$.fn.cycle.transitions = {
|
339 |
+
fade: function($cont, $slides, opts) {
|
340 |
+
$slides.not(':eq('+opts.startingSlide+')').css('opacity',0);
|
341 |
+
opts.before.push(function() { $(this).show() });
|
342 |
+
//opts.animIn = { opacity: 1 };
|
343 |
+
//opts.animOut = { opacity: 0 };
|
344 |
+
opts.animIn = { opacity: .99};
|
345 |
+
opts.animOut = { opacity: 0};
|
346 |
+
opts.cssAfter = { display: 'none' };
|
347 |
+
}
|
348 |
+
};
|
349 |
+
|
350 |
+
$.fn.cycle.ver = function() { return ver; };
|
351 |
+
|
352 |
+
// override these globally if you like (they are all optional)
|
353 |
+
$.fn.cycle.defaults = {
|
354 |
+
fx: 'fade', // one of: fade, shuffle, zoom, scrollLeft, etc
|
355 |
+
timeout: 4000, // milliseconds between slide transitions (0 to disable auto advance)
|
356 |
+
continuous: 0, // true to start next transition immediately after current one completes
|
357 |
+
speed: 1000, // speed of the transition (any valid fx speed value)
|
358 |
+
speedIn: null, // speed of the 'in' transition
|
359 |
+
speedOut: null, // speed of the 'out' transition
|
360 |
+
next: null, // id of element to use as click trigger for next slide
|
361 |
+
prev: null, // id of element to use as click trigger for previous slide
|
362 |
+
prevNextClick: null, // callback fn for prev/next clicks: function(isNext, zeroBasedSlideIndex, slideElement)
|
363 |
+
pager: null, // id of element to use as pager container
|
364 |
+
pagerClick: null, // callback fn for pager clicks: function(zeroBasedSlideIndex, slideElement)
|
365 |
+
pagerEvent: 'click', // event which drives the pager navigation
|
366 |
+
pagerAnchorBuilder: null, // callback fn for building anchor links
|
367 |
+
before: null, // transition callback (scope set to element to be shown)
|
368 |
+
after: null, // transition callback (scope set to element that was shown)
|
369 |
+
end: null, // callback invoked when the slideshow terminates (use with autostop or nowrap options)
|
370 |
+
easing: null, // easing method for both in and out transitions
|
371 |
+
easeIn: null, // easing for "in" transition
|
372 |
+
easeOut: null, // easing for "out" transition
|
373 |
+
shuffle: null, // coords for shuffle animation, ex: { top:15, left: 200 }
|
374 |
+
animIn: null, // properties that define how the slide animates in
|
375 |
+
animOut: null, // properties that define how the slide animates out
|
376 |
+
cssBefore: null, // properties that define the initial state of the slide before transitioning in
|
377 |
+
cssAfter: null, // properties that defined the state of the slide after transitioning out
|
378 |
+
fxFn: null, // function used to control the transition
|
379 |
+
height: 'auto', // container height
|
380 |
+
startingSlide: 0, // zero-based index of the first slide to be displayed
|
381 |
+
sync: 1, // true if in/out transitions should occur simultaneously
|
382 |
+
random: 0, // true for random, false for sequence (not applicable to shuffle fx)
|
383 |
+
fit: 0, // force slides to fit container
|
384 |
+
pause: 0, // true to enable "pause on hover"
|
385 |
+
autostop: 0, // true to end slideshow after X transitions (where X == slide count)
|
386 |
+
autostopCount: 0, // number of transitions (optionally used with autostop to define X)
|
387 |
+
delay: 0, // additional delay (in ms) for first transition (hint: can be negative)
|
388 |
+
slideExpr: null, // expression for selecting slides (if something other than all children is required)
|
389 |
+
cleartype: 0, // true if clearType corrections should be applied (for IE)
|
390 |
+
nowrap: 0 // true to prevent slideshow from wrapping
|
391 |
+
};
|
392 |
+
|
393 |
+
})(jQuery);
|
394 |
+
|
395 |
+
|
396 |
+
/*
|
397 |
+
* jQuery Cycle Plugin Transition Definitions
|
398 |
+
* This script is a plugin for the jQuery Cycle Plugin
|
399 |
+
* Examples and documentation at: http://malsup.com/jquery/cycle/
|
400 |
+
* Copyright (c) 2007-2008 M. Alsup
|
401 |
+
* Version: 2.18
|
402 |
+
* Dual licensed under the MIT and GPL licenses:
|
403 |
+
* http://www.opensource.org/licenses/mit-license.php
|
404 |
+
* http://www.gnu.org/licenses/gpl.html
|
405 |
+
*/
|
406 |
+
(function($) {
|
407 |
+
|
408 |
+
//
|
409 |
+
// These functions define one-time slide initialization for the named
|
410 |
+
// transitions. To save file size feel free to remove any of these that you
|
411 |
+
// don't need.
|
412 |
+
//
|
413 |
+
|
414 |
+
// scrollUp/Down/Left/Right
|
415 |
+
$.fn.cycle.transitions.scrollUp = function($cont, $slides, opts) {
|
416 |
+
$cont.css('overflow','hidden');
|
417 |
+
opts.before.push(function(curr, next, opts) {
|
418 |
+
$(this).show();
|
419 |
+
opts.cssBefore.top = next.offsetHeight;
|
420 |
+
opts.animOut.top = 0-curr.offsetHeight;
|
421 |
+
});
|
422 |
+
opts.cssFirst = { top: 0 };
|
423 |
+
opts.animIn = { top: 0 };
|
424 |
+
opts.cssAfter = { display: 'none' };
|
425 |
+
};
|
426 |
+
$.fn.cycle.transitions.scrollDown = function($cont, $slides, opts) {
|
427 |
+
$cont.css('overflow','hidden');
|
428 |
+
opts.before.push(function(curr, next, opts) {
|
429 |
+
$(this).show();
|
430 |
+
opts.cssBefore.top = 0-next.offsetHeight;
|
431 |
+
opts.animOut.top = curr.offsetHeight;
|
432 |
+
});
|
433 |
+
opts.cssFirst = { top: 0 };
|
434 |
+
opts.animIn = { top: 0 };
|
435 |
+
opts.cssAfter = { display: 'none' };
|
436 |
+
};
|
437 |
+
$.fn.cycle.transitions.scrollLeft = function($cont, $slides, opts) {
|
438 |
+
$cont.css('overflow','hidden');
|
439 |
+
opts.before.push(function(curr, next, opts) {
|
440 |
+
$(this).show();
|
441 |
+
opts.cssBefore.left = next.offsetWidth;
|
442 |
+
opts.animOut.left = 0-curr.offsetWidth;
|
443 |
+
});
|
444 |
+
opts.cssFirst = { left: 0 };
|
445 |
+
opts.animIn = { left: 0 };
|
446 |
+
};
|
447 |
+
$.fn.cycle.transitions.scrollRight = function($cont, $slides, opts) {
|
448 |
+
$cont.css('overflow','hidden');
|
449 |
+
opts.before.push(function(curr, next, opts) {
|
450 |
+
$(this).show();
|
451 |
+
opts.cssBefore.left = 0-next.offsetWidth;
|
452 |
+
opts.animOut.left = curr.offsetWidth;
|
453 |
+
});
|
454 |
+
opts.cssFirst = { left: 0 };
|
455 |
+
opts.animIn = { left: 0 };
|
456 |
+
};
|
457 |
+
$.fn.cycle.transitions.scrollHorz = function($cont, $slides, opts) {
|
458 |
+
$cont.css('overflow','hidden').width();
|
459 |
+
// $slides.show();
|
460 |
+
opts.before.push(function(curr, next, opts, fwd) {
|
461 |
+
$(this).show();
|
462 |
+
var currW = curr.offsetWidth, nextW = next.offsetWidth;
|
463 |
+
opts.cssBefore = fwd ? { left: nextW } : { left: -nextW };
|
464 |
+
opts.animIn.left = 0;
|
465 |
+
opts.animOut.left = fwd ? -currW : currW;
|
466 |
+
$slides.not(curr).css(opts.cssBefore);
|
467 |
+
});
|
468 |
+
opts.cssFirst = { left: 0 };
|
469 |
+
opts.cssAfter = { display: 'none' }
|
470 |
+
};
|
471 |
+
$.fn.cycle.transitions.scrollVert = function($cont, $slides, opts) {
|
472 |
+
$cont.css('overflow','hidden');
|
473 |
+
// $slides.show();
|
474 |
+
opts.before.push(function(curr, next, opts, fwd) {
|
475 |
+
$(this).show();
|
476 |
+
var currH = curr.offsetHeight, nextH = next.offsetHeight;
|
477 |
+
opts.cssBefore = fwd ? { top: -nextH } : { top: nextH };
|
478 |
+
opts.animIn.top = 0;
|
479 |
+
opts.animOut.top = fwd ? currH : -currH;
|
480 |
+
$slides.not(curr).css(opts.cssBefore);
|
481 |
+
});
|
482 |
+
opts.cssFirst = { top: 0 };
|
483 |
+
opts.cssAfter = { display: 'none' }
|
484 |
+
};
|
485 |
+
|
486 |
+
// slideX/slideY
|
487 |
+
$.fn.cycle.transitions.slideX = function($cont, $slides, opts) {
|
488 |
+
opts.before.push(function(curr, next, opts) {
|
489 |
+
$(curr).css('zIndex',1);
|
490 |
+
});
|
491 |
+
opts.cssBefore = { zIndex: 2 };
|
492 |
+
opts.animIn = { width: 'show' };
|
493 |
+
opts.animOut = { width: 'hide' };
|
494 |
+
};
|
495 |
+
$.fn.cycle.transitions.slideY = function($cont, $slides, opts) {
|
496 |
+
opts.before.push(function(curr, next, opts) {
|
497 |
+
$(curr).css('zIndex',1);
|
498 |
+
});
|
499 |
+
opts.cssBefore = { zIndex: 2 };
|
500 |
+
opts.animIn = { height: 'show' };
|
501 |
+
opts.animOut = { height: 'hide' };
|
502 |
+
};
|
503 |
+
|
504 |
+
// shuffle
|
505 |
+
$.fn.cycle.transitions.shuffle = function($cont, $slides, opts) {
|
506 |
+
var w = $cont.css('overflow', 'visible').width();
|
507 |
+
$slides.css({left: 0, top: 0});
|
508 |
+
opts.before.push(function() { $(this).show() });
|
509 |
+
opts.speed = opts.speed / 2; // shuffle has 2 transitions
|
510 |
+
opts.random = 0;
|
511 |
+
opts.shuffle = opts.shuffle || {left:-w, top:15};
|
512 |
+
opts.els = [];
|
513 |
+
for (var i=0; i < $slides.length; i++)
|
514 |
+
opts.els.push($slides[i]);
|
515 |
+
|
516 |
+
for (var i=0; i < opts.startingSlide; i++)
|
517 |
+
opts.els.push(opts.els.shift());
|
518 |
+
|
519 |
+
// custom transition fn (hat tip to Benjamin Sterling for this bit of sweetness!)
|
520 |
+
opts.fxFn = function(curr, next, opts, cb, fwd) {
|
521 |
+
var $el = fwd ? $(curr) : $(next);
|
522 |
+
$el.animate(opts.shuffle, opts.speedIn, opts.easeIn, function() {
|
523 |
+
fwd ? opts.els.push(opts.els.shift()) : opts.els.unshift(opts.els.pop());
|
524 |
+
if (fwd)
|
525 |
+
for (var i=0, len=opts.els.length; i < len; i++)
|
526 |
+
$(opts.els[i]).css('z-index', len-i);
|
527 |
+
else {
|
528 |
+
var z = $(curr).css('z-index');
|
529 |
+
$el.css('z-index', parseInt(z)+1);
|
530 |
+
}
|
531 |
+
$el.animate({left:0, top:0}, opts.speedOut, opts.easeOut, function() {
|
532 |
+
$(fwd ? this : curr).hide();
|
533 |
+
if (cb) cb();
|
534 |
+
});
|
535 |
+
});
|
536 |
+
};
|
537 |
+
};
|
538 |
+
|
539 |
+
// turnUp/Down/Left/Right
|
540 |
+
$.fn.cycle.transitions.turnUp = function($cont, $slides, opts) {
|
541 |
+
opts.before.push(function(curr, next, opts) {
|
542 |
+
$(this).show();
|
543 |
+
opts.cssBefore.top = next.cycleH;
|
544 |
+
opts.animIn.height = next.cycleH;
|
545 |
+
});
|
546 |
+
opts.cssFirst = { top: 0 };
|
547 |
+
opts.cssBefore = { height: 0 };
|
548 |
+
opts.animIn = { top: 0 };
|
549 |
+
opts.animOut = { height: 0 };
|
550 |
+
opts.cssAfter = { display: 'none' };
|
551 |
+
};
|
552 |
+
$.fn.cycle.transitions.turnDown = function($cont, $slides, opts) {
|
553 |
+
opts.before.push(function(curr, next, opts) {
|
554 |
+
$(this).show();
|
555 |
+
opts.animIn.height = next.cycleH;
|
556 |
+
opts.animOut.top = curr.cycleH;
|
557 |
+
});
|
558 |
+
opts.cssFirst = { top: 0 };
|
559 |
+
opts.cssBefore = { top: 0, height: 0 };
|
560 |
+
opts.animOut = { height: 0 };
|
561 |
+
opts.cssAfter = { display: 'none' };
|
562 |
+
};
|
563 |
+
$.fn.cycle.transitions.turnLeft = function($cont, $slides, opts) {
|
564 |
+
opts.before.push(function(curr, next, opts) {
|
565 |
+
$(this).show();
|
566 |
+
opts.cssBefore.left = next.cycleW;
|
567 |
+
opts.animIn.width = next.cycleW;
|
568 |
+
});
|
569 |
+
opts.cssBefore = { width: 0 };
|
570 |
+
opts.animIn = { left: 0 };
|
571 |
+
opts.animOut = { width: 0 };
|
572 |
+
opts.cssAfter = { display: 'none' };
|
573 |
+
};
|
574 |
+
$.fn.cycle.transitions.turnRight = function($cont, $slides, opts) {
|
575 |
+
opts.before.push(function(curr, next, opts) {
|
576 |
+
$(this).show();
|
577 |
+
opts.animIn.width = next.cycleW;
|
578 |
+
opts.animOut.left = curr.cycleW;
|
579 |
+
});
|
580 |
+
opts.cssBefore = { left: 0, width: 0 };
|
581 |
+
opts.animIn = { left: 0 };
|
582 |
+
opts.animOut = { width: 0 };
|
583 |
+
opts.cssAfter = { display: 'none' };
|
584 |
+
};
|
585 |
+
|
586 |
+
// zoom
|
587 |
+
$.fn.cycle.transitions.zoom = function($cont, $slides, opts) {
|
588 |
+
opts.cssFirst = { top:0, left: 0 };
|
589 |
+
opts.cssAfter = { display: 'none' };
|
590 |
+
|
591 |
+
opts.before.push(function(curr, next, opts) {
|
592 |
+
$(this).show();
|
593 |
+
opts.cssBefore = { width: 0, height: 0, top: next.cycleH/2, left: next.cycleW/2 };
|
594 |
+
opts.animIn = { top: 0, left: 0, width: next.cycleW, height: next.cycleH };
|
595 |
+
opts.animOut = { width: 0, height: 0, top: curr.cycleH/2, left: curr.cycleW/2 };
|
596 |
+
});
|
597 |
+
};
|
598 |
+
|
599 |
+
// fadeZoom
|
600 |
+
$.fn.cycle.transitions.fadeZoom = function($cont, $slides, opts) {
|
601 |
+
opts.before.push(function(curr, next, opts) {
|
602 |
+
opts.cssBefore = { width: 0, height: 0, opacity: 1, left: next.cycleW/2, top: next.cycleH/2, zIndex: 1 };
|
603 |
+
opts.animIn = { top: 0, left: 0, width: next.cycleW, height: next.cycleH };
|
604 |
+
});
|
605 |
+
opts.animOut = { opacity: 0 };
|
606 |
+
opts.cssAfter = { zIndex: 0 };
|
607 |
+
};
|
608 |
+
|
609 |
+
// blindX
|
610 |
+
$.fn.cycle.transitions.blindX = function($cont, $slides, opts) {
|
611 |
+
var w = $cont.css('overflow','hidden').width();
|
612 |
+
$slides.show();
|
613 |
+
opts.before.push(function(curr, next, opts) {
|
614 |
+
$(curr).css('zIndex',1);
|
615 |
+
});
|
616 |
+
opts.cssBefore = { left: w, zIndex: 2 };
|
617 |
+
opts.cssAfter = { zIndex: 1 };
|
618 |
+
opts.animIn = { left: 0 };
|
619 |
+
opts.animOut = { left: w };
|
620 |
+
};
|
621 |
+
// blindY
|
622 |
+
$.fn.cycle.transitions.blindY = function($cont, $slides, opts) {
|
623 |
+
var h = $cont.css('overflow','hidden').height();
|
624 |
+
$slides.show();
|
625 |
+
opts.before.push(function(curr, next, opts) {
|
626 |
+
$(curr).css('zIndex',1);
|
627 |
+
});
|
628 |
+
opts.cssBefore = { top: h, zIndex: 2 };
|
629 |
+
opts.cssAfter = { zIndex: 1 };
|
630 |
+
opts.animIn = { top: 0 };
|
631 |
+
opts.animOut = { top: h };
|
632 |
+
};
|
633 |
+
// blindZ
|
634 |
+
$.fn.cycle.transitions.blindZ = function($cont, $slides, opts) {
|
635 |
+
var h = $cont.css('overflow','hidden').height();
|
636 |
+
var w = $cont.width();
|
637 |
+
$slides.show();
|
638 |
+
opts.before.push(function(curr, next, opts) {
|
639 |
+
$(curr).css('zIndex',1);
|
640 |
+
});
|
641 |
+
opts.cssBefore = { top: h, left: w, zIndex: 2 };
|
642 |
+
opts.cssAfter = { zIndex: 1 };
|
643 |
+
opts.animIn = { top: 0, left: 0 };
|
644 |
+
opts.animOut = { top: h, left: w };
|
645 |
+
};
|
646 |
+
|
647 |
+
// growX - grow horizontally from centered 0 width
|
648 |
+
$.fn.cycle.transitions.growX = function($cont, $slides, opts) {
|
649 |
+
opts.before.push(function(curr, next, opts) {
|
650 |
+
opts.cssBefore = { left: this.cycleW/2, width: 0, zIndex: 2 };
|
651 |
+
opts.animIn = { left: 0, width: this.cycleW };
|
652 |
+
opts.animOut = { left: 0 };
|
653 |
+
$(curr).css('zIndex',1);
|
654 |
+
});
|
655 |
+
};
|
656 |
+
// growX - grow vertically from centered 0 height
|
657 |
+
$.fn.cycle.transitions.growY = function($cont, $slides, opts) {
|
658 |
+
opts.before.push(function(curr, next, opts) {
|
659 |
+
opts.cssBefore = { top: this.cycleH/2, height: 0, zIndex: 2 };
|
660 |
+
opts.animIn = { top: 0, height: this.cycleH };
|
661 |
+
opts.animOut = { top: 0 };
|
662 |
+
$(curr).css('zIndex',1);
|
663 |
+
});
|
664 |
+
};
|
665 |
+
|
666 |
+
// curtainX - squeeze in both edges horizontally
|
667 |
+
$.fn.cycle.transitions.curtainX = function($cont, $slides, opts) {
|
668 |
+
opts.before.push(function(curr, next, opts) {
|
669 |
+
opts.cssBefore = { left: next.cycleW/2, width: 0, zIndex: 1, display: 'block' };
|
670 |
+
opts.animIn = { left: 0, width: this.cycleW };
|
671 |
+
opts.animOut = { left: curr.cycleW/2, width: 0 };
|
672 |
+
$(curr).css('zIndex',2);
|
673 |
+
});
|
674 |
+
opts.cssAfter = { zIndex: 1, display: 'none' };
|
675 |
+
};
|
676 |
+
// curtainX - squeeze in both edges vertically
|
677 |
+
$.fn.cycle.transitions.curtainY = function($cont, $slides, opts) {
|
678 |
+
opts.before.push(function(curr, next, opts) {
|
679 |
+
opts.cssBefore = { top: next.cycleH/2, height: 0, zIndex: 1, display: 'block' };
|
680 |
+
opts.animIn = { top: 0, height: this.cycleH };
|
681 |
+
opts.animOut = { top: curr.cycleH/2, height: 0 };
|
682 |
+
$(curr).css('zIndex',2);
|
683 |
+
});
|
684 |
+
opts.cssAfter = { zIndex: 1, display: 'none' };
|
685 |
+
};
|
686 |
+
|
687 |
+
// cover - curr slide covered by next slide
|
688 |
+
$.fn.cycle.transitions.cover = function($cont, $slides, opts) {
|
689 |
+
var d = opts.direction || 'left';
|
690 |
+
var w = $cont.css('overflow','hidden').width();
|
691 |
+
var h = $cont.height();
|
692 |
+
opts.before.push(function(curr, next, opts) {
|
693 |
+
opts.cssBefore = { zIndex: 2, display: 'block' };
|
694 |
+
if (d == 'right')
|
695 |
+
opts.cssBefore.left = -w;
|
696 |
+
else if (d == 'up')
|
697 |
+
opts.cssBefore.top = h;
|
698 |
+
else if (d == 'down')
|
699 |
+
opts.cssBefore.top = -h;
|
700 |
+
else
|
701 |
+
opts.cssBefore.left = w;
|
702 |
+
$(curr).css('zIndex',1);
|
703 |
+
});
|
704 |
+
opts.animIn = { left: 0, top: 0 };
|
705 |
+
opts.animOut = { left: 0, top: 0 };
|
706 |
+
opts.cssAfter = { zIndex: 2, display: 'none' };
|
707 |
+
};
|
708 |
+
|
709 |
+
// uncover - curr slide moves off next slide
|
710 |
+
$.fn.cycle.transitions.uncover = function($cont, $slides, opts) {
|
711 |
+
var d = opts.direction || 'left';
|
712 |
+
var w = $cont.css('overflow','hidden').width();
|
713 |
+
var h = $cont.height();
|
714 |
+
opts.before.push(function(curr, next, opts) {
|
715 |
+
opts.cssBefore.display = 'block';
|
716 |
+
if (d == 'right')
|
717 |
+
opts.animOut.left = w;
|
718 |
+
else if (d == 'up')
|
719 |
+
opts.animOut.top = -h;
|
720 |
+
else if (d == 'down')
|
721 |
+
opts.animOut.top = h;
|
722 |
+
else
|
723 |
+
opts.animOut.left = -w;
|
724 |
+
$(curr).css('zIndex',2);
|
725 |
+
});
|
726 |
+
opts.animIn = { left: 0, top: 0 };
|
727 |
+
opts.cssBefore = { zIndex: 1, top: 0, left: 0 };
|
728 |
+
opts.cssAfter = { zIndex: 1, display: 'none' };
|
729 |
+
};
|
730 |
+
|
731 |
+
// toss - move top slide and fade away
|
732 |
+
$.fn.cycle.transitions.toss = function($cont, $slides, opts) {
|
733 |
+
var w = $cont.css('overflow','visible').width();
|
734 |
+
var h = $cont.height();
|
735 |
+
opts.before.push(function(curr, next, opts) {
|
736 |
+
$(curr).css('zIndex',2);
|
737 |
+
opts.cssBefore.display = 'block';
|
738 |
+
// provide default toss settings if animOut not provided
|
739 |
+
if (!opts.animOut.left && !opts.animOut.top)
|
740 |
+
opts.animOut = { left: w*2, top: -h/2, opacity: 0 };
|
741 |
+
else
|
742 |
+
opts.animOut.opacity = 0;
|
743 |
+
});
|
744 |
+
opts.cssBefore = { left: 0, top: 0, zIndex: 1, opacity: 1 };
|
745 |
+
opts.animIn = { left: 0 };
|
746 |
+
opts.cssAfter = { zIndex: 2, display: 'none' };
|
747 |
+
};
|
748 |
+
|
749 |
+
|
750 |
+
})(jQuery);
|
skin/frontend/default/freepop/js/testimonial/jquery_noconflict.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
jQuery.noConflict();
|
skin/frontend/default/freepop/smartmenu/css/smartmenu.css
ADDED
@@ -0,0 +1,324 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.mv_smartmenu{
|
2 |
+
background:#F6F6F6 none repeat scroll 0 0;
|
3 |
+
border:0;
|
4 |
+
float:left;
|
5 |
+
margin-bottom:15px;
|
6 |
+
padding:0;
|
7 |
+
width:100%;
|
8 |
+
}
|
9 |
+
.mv_smartmenu_content{background:#fff url(../images/bg_block_content.gif) left top repeat-x; border:1px solid #cacaca; border-top:0; border-radius:0 0 8px 8px; padding:10px 13px;}
|
10 |
+
.mv_smartmenu .head a{
|
11 |
+
background:url(../images/arrow-cat.png) no-repeat right center;
|
12 |
+
float: right;
|
13 |
+
width: 12px;
|
14 |
+
height: 11px;
|
15 |
+
padding: 11px 0 8px!important;
|
16 |
+
}
|
17 |
+
.mv_smartmenu .head a:hover{
|
18 |
+
background:url(../images/arrow-cat-hover.png) no-repeat right center;
|
19 |
+
}
|
20 |
+
.mv_smartmenu .selected a{
|
21 |
+
background:url(../images/arrow-cat-active.png) no-repeat right center !important;
|
22 |
+
}
|
23 |
+
.mv_smartmenu_head strong{text-transform: none !important; font-size:14px !important;}
|
24 |
+
#theMenu_acc li a{
|
25 |
+
clear: both;
|
26 |
+
padding-bottom: 0px;
|
27 |
+
padding-top:2px;
|
28 |
+
padding-left:17px;
|
29 |
+
}
|
30 |
+
#theMenu_acc li a.main-cate{background:url(../images/bg_listmenu.png) left center no-repeat; padding-bottom: 8px; padding-top: 8px;}
|
31 |
+
#theMenu_acc li a.main-cate:hover{padding-bottom: 8px; padding-top: 8px; text-decoration:underline; font-weight:bold; padding-left:17px;}
|
32 |
+
#theMenu_acc li a:hover{
|
33 |
+
padding-bottom: 0px;
|
34 |
+
padding-top: 2px;
|
35 |
+
padding-left: 12px;
|
36 |
+
}
|
37 |
+
#theMenu_acc li ul li a{
|
38 |
+
background:url(../images/bg_listmenu2.png) no-repeat 0 9px;
|
39 |
+
padding-left: 12px;
|
40 |
+
color: #666666;
|
41 |
+
text-decoration: none;
|
42 |
+
padding-bottom: 5px;
|
43 |
+
padding-top: 5px;
|
44 |
+
display:block;
|
45 |
+
}
|
46 |
+
#theMenu_acc li ul li a:hover{
|
47 |
+
background:url(../images/bg_listmenu2.png) no-repeat 0 9px;
|
48 |
+
padding-left: 12px;
|
49 |
+
color: #3FA4CB;
|
50 |
+
text-decoration: none;
|
51 |
+
padding-bottom: 5px;
|
52 |
+
padding-top: 5px;
|
53 |
+
display:block;
|
54 |
+
}
|
55 |
+
#theMenu_acc li ul li ul{
|
56 |
+
margin-left: 10px;
|
57 |
+
}
|
58 |
+
#theMenu_acc li ul li ul li a{
|
59 |
+
background:url(../images/bg_listmenu2.png) no-repeat 0 10px;
|
60 |
+
padding-left: 13px;
|
61 |
+
color: #666666;
|
62 |
+
text-decoration: none;
|
63 |
+
}
|
64 |
+
#theMenu_acc li ul li ul li a:hover{
|
65 |
+
background:url(../images/bg_listmenu2.png) no-repeat 0 10px;
|
66 |
+
padding-left: 13px;
|
67 |
+
color: #3FA4CB;
|
68 |
+
text-decoration: none;
|
69 |
+
}
|
70 |
+
#theMenu_acc li.active a{
|
71 |
+
font-weight: bold;
|
72 |
+
}
|
73 |
+
#theMenu_acc li.active ul li a{
|
74 |
+
font-weight: normal;
|
75 |
+
}
|
76 |
+
#theMenu_acc li.active ul li.active a{
|
77 |
+
font-weight: bold;
|
78 |
+
}
|
79 |
+
#theMenu_acc li.active ul li.active ul li a{
|
80 |
+
font-weight: normal;
|
81 |
+
}
|
82 |
+
#theMenu_acc li.active ul li.active ul li.active a{
|
83 |
+
font-weight: bold;
|
84 |
+
}
|
85 |
+
/*-----------------------------------------*/
|
86 |
+
.mw_shopby{
|
87 |
+
margin-bottom: 1.3em;
|
88 |
+
}
|
89 |
+
.mw_shopby_head {
|
90 |
+
background:transparent url(../images/layered_nav_head_bg.gif) no-repeat scroll 0 0;
|
91 |
+
height:24px;
|
92 |
+
margin:0;
|
93 |
+
}
|
94 |
+
.mw_shopby h4 {
|
95 |
+
background: url(../images/bg_block_content.gif) repeat-x scroll left top;
|
96 |
+
border-color:#CACACA;
|
97 |
+
border-style:solid;
|
98 |
+
border-width:0 1px 1px;
|
99 |
+
color:#666;
|
100 |
+
font-size:1em;
|
101 |
+
font-weight:bold;
|
102 |
+
margin:0;
|
103 |
+
padding:4px 12px 5px;
|
104 |
+
}
|
105 |
+
.mw_shopby .block-content{padding-top:0;}
|
106 |
+
.mw_shopby p.block-subtitle{
|
107 |
+
background:none;
|
108 |
+
border-color:#CACACA;
|
109 |
+
border-style:solid;
|
110 |
+
border-width:0;
|
111 |
+
color:#3FA4CB;
|
112 |
+
font-size:1em;
|
113 |
+
font-weight:bold;
|
114 |
+
margin:0;
|
115 |
+
padding:7px 0 0;
|
116 |
+
}
|
117 |
+
.mw_shopby .btn-remove{
|
118 |
+
float:right;
|
119 |
+
font-size:11px;
|
120 |
+
margin:4px 3px 1px 5px;
|
121 |
+
}
|
122 |
+
.mw_shopby .currently{
|
123 |
+
border:0;
|
124 |
+
}
|
125 |
+
.mw_shopby .currently ol li{padding:5px 0; display:block;}
|
126 |
+
.mw_shopby .actions{
|
127 |
+
text-align: right;
|
128 |
+
border:0;
|
129 |
+
padding:0;
|
130 |
+
}
|
131 |
+
.mw_shopby_content{
|
132 |
+
border:0;
|
133 |
+
padding-top: 7px !important;
|
134 |
+
padding-bottom: 0 !important;
|
135 |
+
}
|
136 |
+
.mw_shopby_content span.title{
|
137 |
+
color:#2F2F2F;
|
138 |
+
margin-right:0;
|
139 |
+
margin-bottom: 0px;
|
140 |
+
padding:2px 0 5px 15px;
|
141 |
+
text-transform:uppercase;
|
142 |
+
font-size: 12px;
|
143 |
+
font-weight: bold;
|
144 |
+
display: block;
|
145 |
+
}
|
146 |
+
.mw_shopby .block-title strong{text-transform:none !important; font-size:14px !important;}
|
147 |
+
.mw_shopby_content span.title{
|
148 |
+
background:transparent url(../images/arrow-cat.png) no-repeat scroll right center;
|
149 |
+
padding-left:0;
|
150 |
+
}
|
151 |
+
.mw_shopby_content span.selected
|
152 |
+
{
|
153 |
+
background: transparent url(../images/arrow-cat-active.png) no-repeat scroll right center !important;
|
154 |
+
}
|
155 |
+
|
156 |
+
.mw_shopby_content span.title a{
|
157 |
+
color: #3FA4CB;
|
158 |
+
font-size: 12px;
|
159 |
+
font-weight: bold;
|
160 |
+
text-decoration: none;
|
161 |
+
text-transform: none;
|
162 |
+
background: url(../images/bg_listmenu.png) no-repeat scroll left 8px;
|
163 |
+
padding-bottom: 5px;
|
164 |
+
padding-top: 5px;
|
165 |
+
padding-left:17px;
|
166 |
+
display:block;
|
167 |
+
}
|
168 |
+
.mw_shopby_content span.title a:hover{
|
169 |
+
color: #3FA4CB;
|
170 |
+
font-size: 12px;
|
171 |
+
font-weight: bold;
|
172 |
+
text-decoration: underline;
|
173 |
+
text-transform: none;
|
174 |
+
}
|
175 |
+
.mw_shopby_content ol{
|
176 |
+
padding-left: 17px;
|
177 |
+
}
|
178 |
+
.mw_shopby_content ol li{
|
179 |
+
background: url(../images/bg_listmenu2.png) no-repeat scroll 0 9px;
|
180 |
+
padding:5px 0 5px 10px;
|
181 |
+
}
|
182 |
+
.mv_smartmenu h4{
|
183 |
+
border-bottom:1px solid #DDDDDD;
|
184 |
+
color:#0A263C;
|
185 |
+
padding:0px 8px;
|
186 |
+
text-transform:uppercase;
|
187 |
+
}
|
188 |
+
a.main-cate, a:hover.main-cate {
|
189 |
+
color:#3fa4cb;
|
190 |
+
font-size:12px;
|
191 |
+
font-weight:bold;
|
192 |
+
text-decoration:none;
|
193 |
+
text-transform:none;
|
194 |
+
}
|
195 |
+
|
196 |
+
.mw_shopby_content a.title_auto , .mw_shopby_content a:hover.title_auto{
|
197 |
+
background:transparent url(../images/arrow-cat-active.gif) no-repeat scroll right center;
|
198 |
+
color:#2F2F2F;
|
199 |
+
display:block;
|
200 |
+
font-size:12px;
|
201 |
+
font-weight:bold;
|
202 |
+
margin-bottom:0;
|
203 |
+
margin-right:3px;
|
204 |
+
padding:2px 0 5px 15px;
|
205 |
+
text-transform:uppercase;
|
206 |
+
text-decoration: none;
|
207 |
+
}
|
208 |
+
.mw_shopby_content a.select_auto , .mw_shopby_content a:hover.select_auto{
|
209 |
+
background:transparent url(../images/arrow-cat.gif) no-repeat scroll right center !important;
|
210 |
+
color:#2F2F2F;
|
211 |
+
display:block;
|
212 |
+
font-size:12px;
|
213 |
+
font-weight:bold;
|
214 |
+
margin-bottom:0;
|
215 |
+
margin-right:3px;
|
216 |
+
padding:2px 0 5px 15px;
|
217 |
+
text-transform:uppercase;
|
218 |
+
text-decoration: none;
|
219 |
+
}
|
220 |
+
|
221 |
+
.mw_shopby_content a.title_collap , .mw_shopby_content a:hover.title_collap{
|
222 |
+
background:transparent url(../images/arrow-cat-active.gif) no-repeat scroll right center !important;
|
223 |
+
color:#2F2F2F;
|
224 |
+
display:block;
|
225 |
+
font-size:12px;
|
226 |
+
font-weight:bold;
|
227 |
+
margin-bottom:0;
|
228 |
+
margin-right:3px;
|
229 |
+
padding:2px 0 5px 15px;
|
230 |
+
text-transform:uppercase;
|
231 |
+
text-decoration: none;
|
232 |
+
}
|
233 |
+
.mw_shopby_content a.select_collap , .mw_shopby_content a:hover.select_collap{
|
234 |
+
background:transparent url(../images/arrow-cat.gif) no-repeat scroll right center;
|
235 |
+
color:#2F2F2F;
|
236 |
+
display:block;
|
237 |
+
font-size:12px;
|
238 |
+
font-weight:bold;
|
239 |
+
margin-bottom:0;
|
240 |
+
margin-right:3px;
|
241 |
+
padding:2px 0 5px 15px;
|
242 |
+
text-transform:uppercase;
|
243 |
+
text-decoration: none;
|
244 |
+
}
|
245 |
+
|
246 |
+
|
247 |
+
#cate_collap a.title_collap span , #cate_collap a:hover.title_collap span{
|
248 |
+
background:transparent url(../images/arrow-cat.gif) no-repeat scroll 0 50%;
|
249 |
+
display:block;
|
250 |
+
width:15px;
|
251 |
+
}
|
252 |
+
#cate_collap a.select_auto span , #cate_collap a:hover.select_auto span{
|
253 |
+
background:transparent url(../images/arrow-cat-active.gif) no-repeat scroll 0 50%;
|
254 |
+
display:block;
|
255 |
+
width:15px;
|
256 |
+
}
|
257 |
+
|
258 |
+
|
259 |
+
.ul_level1 ul{
|
260 |
+
display: block !important;
|
261 |
+
}
|
262 |
+
#cate_collap li a{
|
263 |
+
clear: both;
|
264 |
+
padding-bottom: 0px;
|
265 |
+
padding-top: 2px;
|
266 |
+
padding-left: 12px;
|
267 |
+
color:#2F2F2F;
|
268 |
+
font-size:12px;
|
269 |
+
font-weight:bold;
|
270 |
+
text-decoration:none;
|
271 |
+
text-transform:uppercase;
|
272 |
+
}
|
273 |
+
#cate_collap li a:hover{
|
274 |
+
padding-bottom: 0px;
|
275 |
+
padding-top: 2px;
|
276 |
+
padding-left: 12px;
|
277 |
+
color:#2F2F2F;
|
278 |
+
font-size:12px;
|
279 |
+
font-weight:bold;
|
280 |
+
text-decoration:none;
|
281 |
+
text-transform:uppercase;
|
282 |
+
}
|
283 |
+
#cate_collap li ul li a{
|
284 |
+
background:url(../images/bg-li.gif) no-repeat 10px 10px;
|
285 |
+
padding-left: 25px;
|
286 |
+
color: #444;
|
287 |
+
text-decoration: none;
|
288 |
+
padding-bottom: 0px;
|
289 |
+
text-transform:capitalize;
|
290 |
+
font-weight: normal;
|
291 |
+
}
|
292 |
+
#cate_collap li ul li a:hover{
|
293 |
+
background:url(../images/bg-li.gif) no-repeat 10px 10px;
|
294 |
+
padding-left: 25px;
|
295 |
+
color: #444;
|
296 |
+
text-decoration: none;
|
297 |
+
padding-bottom: 0px;
|
298 |
+
text-transform:capitalize;
|
299 |
+
font-weight: normal;
|
300 |
+
}
|
301 |
+
#cate_collap li ul li ul{
|
302 |
+
margin-left: 10px;
|
303 |
+
}
|
304 |
+
#cate_collap li ul li ul li a{
|
305 |
+
background:url(../images/bg-cate-active2.gif) no-repeat 10px 10px;
|
306 |
+
padding-left: 25px;
|
307 |
+
color: #444;
|
308 |
+
text-decoration: none;
|
309 |
+
}
|
310 |
+
#cate_collap li ul li ul li a:hover{
|
311 |
+
background:url(../images/bg-cate-active2.gif) no-repeat 10px 10px;
|
312 |
+
padding-left: 25px;
|
313 |
+
color: #444;
|
314 |
+
text-decoration: none;
|
315 |
+
}
|
316 |
+
#cate_collap li.active a{
|
317 |
+
font-weight: bold;
|
318 |
+
}
|
319 |
+
#cate_collap li.active ul li a{
|
320 |
+
font-weight: normal;
|
321 |
+
}
|
322 |
+
#cate_collap li.active ul li.active a{
|
323 |
+
font-weight: bold;
|
324 |
+
}
|
skin/frontend/default/freepop/smartmenu/css/superfish-navbar.css
ADDED
@@ -0,0 +1,93 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
/*** adding the class sf-navbar in addition to sf-menu creates an all-horizontal nav-bar menu ***/
|
3 |
+
.sf-navbar {
|
4 |
+
background: #BDD2FF;
|
5 |
+
height: 2.5em;
|
6 |
+
padding-bottom: 2.5em;
|
7 |
+
position: relative;
|
8 |
+
}
|
9 |
+
.sf-navbar li {
|
10 |
+
background: #AABDE6;
|
11 |
+
position: static;
|
12 |
+
}
|
13 |
+
.sf-navbar a {
|
14 |
+
border-top: none;
|
15 |
+
}
|
16 |
+
.sf-navbar li ul {
|
17 |
+
width: 44em; /*IE6 soils itself without this*/
|
18 |
+
}
|
19 |
+
.sf-navbar li li {
|
20 |
+
background: #BDD2FF;
|
21 |
+
position: relative;
|
22 |
+
}
|
23 |
+
.sf-navbar li li ul {
|
24 |
+
width: 13em;
|
25 |
+
}
|
26 |
+
.sf-navbar li li li {
|
27 |
+
width: 100%;
|
28 |
+
}
|
29 |
+
.sf-navbar ul li {
|
30 |
+
width: auto;
|
31 |
+
float: left;
|
32 |
+
}
|
33 |
+
.sf-navbar a, .sf-navbar a:visited {
|
34 |
+
border: none;
|
35 |
+
}
|
36 |
+
.sf-navbar li.current {
|
37 |
+
background: #BDD2FF;
|
38 |
+
}
|
39 |
+
.sf-navbar li:hover,
|
40 |
+
.sf-navbar li.sfHover,
|
41 |
+
.sf-navbar li li.current,
|
42 |
+
.sf-navbar a:focus, .sf-navbar a:hover, .sf-navbar a:active {
|
43 |
+
background: #BDD2FF;
|
44 |
+
}
|
45 |
+
.sf-navbar ul li:hover,
|
46 |
+
.sf-navbar ul li.sfHover,
|
47 |
+
ul.sf-navbar ul li:hover li,
|
48 |
+
ul.sf-navbar ul li.sfHover li,
|
49 |
+
.sf-navbar ul a:focus, .sf-navbar ul a:hover, .sf-navbar ul a:active {
|
50 |
+
background: #D1DFFF;
|
51 |
+
}
|
52 |
+
ul.sf-navbar li li li:hover,
|
53 |
+
ul.sf-navbar li li li.sfHover,
|
54 |
+
.sf-navbar li li.current li.current,
|
55 |
+
.sf-navbar ul li li a:focus, .sf-navbar ul li li a:hover, .sf-navbar ul li li a:active {
|
56 |
+
background: #E6EEFF;
|
57 |
+
}
|
58 |
+
ul.sf-navbar .current ul,
|
59 |
+
ul.sf-navbar ul li:hover ul,
|
60 |
+
ul.sf-navbar ul li.sfHover ul {
|
61 |
+
left: 0;
|
62 |
+
top: 2.5em; /* match top ul list item height */
|
63 |
+
}
|
64 |
+
ul.sf-navbar .current ul ul {
|
65 |
+
top: -999em;
|
66 |
+
}
|
67 |
+
|
68 |
+
.sf-navbar li li.current > a {
|
69 |
+
font-weight: bold;
|
70 |
+
}
|
71 |
+
|
72 |
+
/*** point all arrows down ***/
|
73 |
+
/* point right for anchors in subs */
|
74 |
+
.sf-navbar ul .sf-sub-indicator { background-position: -10px -100px; }
|
75 |
+
.sf-navbar ul a > .sf-sub-indicator { background-position: 0 -100px; }
|
76 |
+
/* apply hovers to modern browsers */
|
77 |
+
.sf-navbar ul a:focus > .sf-sub-indicator,
|
78 |
+
.sf-navbar ul a:hover > .sf-sub-indicator,
|
79 |
+
.sf-navbar ul a:active > .sf-sub-indicator,
|
80 |
+
.sf-navbar ul li:hover > a > .sf-sub-indicator,
|
81 |
+
.sf-navbar ul li.sfHover > a > .sf-sub-indicator {
|
82 |
+
background-position: -10px -100px; /* arrow hovers for modern browsers*/
|
83 |
+
}
|
84 |
+
|
85 |
+
/*** remove shadow on first submenu ***/
|
86 |
+
.sf-navbar > li > ul {
|
87 |
+
background: transparent;
|
88 |
+
padding: 0;
|
89 |
+
-moz-border-radius-bottomleft: 0;
|
90 |
+
-moz-border-radius-topright: 0;
|
91 |
+
-webkit-border-top-right-radius: 0;
|
92 |
+
-webkit-border-bottom-left-radius: 0;
|
93 |
+
}
|
skin/frontend/default/freepop/smartmenu/css/superfish-vertical.css
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*** adding sf-vertical in addition to sf-menu creates a vertical menu ***/
|
2 |
+
|
3 |
+
.sf-vertical, .sf-vertical li {
|
4 |
+
width: 100%;
|
5 |
+
}
|
6 |
+
/* this lacks ul at the start of the selector, so the styles from the main CSS file override it where needed */
|
7 |
+
.sf-vertical li:hover ul,
|
8 |
+
.sf-vertical li.sfHover ul {
|
9 |
+
left: 100%; /* match ul width */
|
10 |
+
top: 0;
|
11 |
+
}
|
12 |
+
|
13 |
+
/*** alter arrow directions ***/
|
14 |
+
.sf-vertical .sf-sub-indicator { background-position: -10px 0; } /* IE6 gets solid image only */
|
15 |
+
.sf-vertical a > .sf-sub-indicator { background-position: 0 0; } /* use translucent arrow for modern browsers*/
|
16 |
+
|
17 |
+
/* hover arrow direction for modern browsers*/
|
18 |
+
.sf-vertical a:focus > .sf-sub-indicator,
|
19 |
+
.sf-vertical a:hover > .sf-sub-indicator,
|
20 |
+
.sf-vertical a:active > .sf-sub-indicator,
|
21 |
+
.sf-vertical li:hover > a > .sf-sub-indicator,
|
22 |
+
.sf-vertical li.sfHover > a > .sf-sub-indicator {
|
23 |
+
background-position: -10px 0; /* arrow hovers for modern browsers*/
|
24 |
+
}
|
skin/frontend/default/freepop/smartmenu/css/superfish.css
ADDED
@@ -0,0 +1,245 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
/*** ESSENTIAL STYLES ***/
|
3 |
+
.sf-menu, .sf-menu * {
|
4 |
+
margin: 0;
|
5 |
+
padding: 0;
|
6 |
+
list-style: none;
|
7 |
+
}
|
8 |
+
.sf-menu {
|
9 |
+
line-height: 1.0;
|
10 |
+
}
|
11 |
+
.sf-menu ul {
|
12 |
+
position: absolute;
|
13 |
+
top: -999em;
|
14 |
+
width: 200px; /* left offset of submenus need to match (see below) */
|
15 |
+
border: 1px solid #ddd;
|
16 |
+
border-top: 0px none;
|
17 |
+
}
|
18 |
+
.sf-menu ul li {
|
19 |
+
width: 100%;
|
20 |
+
}
|
21 |
+
.sf-menu li:hover {
|
22 |
+
visibility: inherit; /* fixes IE7 'sticky bug' */
|
23 |
+
}
|
24 |
+
.sf-menu li {
|
25 |
+
float: left;
|
26 |
+
position: relative;
|
27 |
+
}
|
28 |
+
.sf-menu a {
|
29 |
+
display: block;
|
30 |
+
position: relative;
|
31 |
+
}
|
32 |
+
.sf-menu li:hover ul,
|
33 |
+
.sf-menu li.sfHover ul {
|
34 |
+
left: 0;
|
35 |
+
top: 2.5em; /* match top ul list item height */
|
36 |
+
z-index: 99;
|
37 |
+
}
|
38 |
+
ul.sf-menu li:hover li ul,
|
39 |
+
ul.sf-menu li.sfHover li ul {
|
40 |
+
top: -999em;
|
41 |
+
}
|
42 |
+
ul.sf-menu li li:hover ul,
|
43 |
+
ul.sf-menu li li.sfHover ul {
|
44 |
+
left: 200px; /* match ul width */
|
45 |
+
top: 0;
|
46 |
+
}
|
47 |
+
ul.sf-menu li li:hover li ul,
|
48 |
+
ul.sf-menu li li.sfHover li ul {
|
49 |
+
top: -999em;
|
50 |
+
}
|
51 |
+
ul.sf-menu li li li:hover ul,
|
52 |
+
ul.sf-menu li li li.sfHover ul {
|
53 |
+
left: 10em; /* match ul width */
|
54 |
+
top: 0;
|
55 |
+
}
|
56 |
+
|
57 |
+
/*** DEMO SKIN ***/
|
58 |
+
.sf-menu {
|
59 |
+
float: left;
|
60 |
+
margin-bottom: 1em;
|
61 |
+
border: 1px solid #ddd;
|
62 |
+
border-top: none 0px;
|
63 |
+
}
|
64 |
+
.sf-menu a {
|
65 |
+
border-left: 1px solid #fff;
|
66 |
+
border-top: 1px solid #dddddd;
|
67 |
+
border-bottom: 1px solid #fff;
|
68 |
+
padding: .55em 1em;
|
69 |
+
text-decoration:none;
|
70 |
+
}
|
71 |
+
.sf-menu a, .sf-menu a:visited { /* visited pseudo selector so IE6 applies text colour*/
|
72 |
+
color: #444444;
|
73 |
+
}
|
74 |
+
.sf-menu li {
|
75 |
+
background: #f6f6f6;
|
76 |
+
}
|
77 |
+
.sf-menu li li {
|
78 |
+
background: #f6f6f6;
|
79 |
+
}
|
80 |
+
.sf-menu li li li {
|
81 |
+
background: #f6f6f6;
|
82 |
+
}
|
83 |
+
.sf-menu li:hover, .sf-menu li.sfHover,
|
84 |
+
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
|
85 |
+
background: #fff url(../images/base_mini_head_bg.gif) repeat-x;
|
86 |
+
outline: 0;
|
87 |
+
}
|
88 |
+
|
89 |
+
/*** arrows **/
|
90 |
+
.sf-menu a.sf-with-ul {
|
91 |
+
padding-right: 2.25em;
|
92 |
+
min-width: 1px; /* trigger IE7 hasLayout so spans position accurately */
|
93 |
+
}
|
94 |
+
.sf-sub-indicator {
|
95 |
+
position: absolute;
|
96 |
+
display: block;
|
97 |
+
right: .75em;
|
98 |
+
top: 1.05em; /* IE6 only */
|
99 |
+
width: 10px;
|
100 |
+
height: 10px;
|
101 |
+
text-indent: -999em;
|
102 |
+
overflow: hidden;
|
103 |
+
background: url(../images/icon.gif) no-repeat right; /* 8-bit indexed alpha png. IE6 gets solid image only */
|
104 |
+
|
105 |
+
}
|
106 |
+
a > .sf-sub-indicator { /* give all except IE6 the correct values */
|
107 |
+
top: .8em;
|
108 |
+
background-position: 0 -100px; /* use translucent arrow for modern browsers*/
|
109 |
+
}
|
110 |
+
/* apply hovers to modern browsers */
|
111 |
+
a:focus > .sf-sub-indicator,
|
112 |
+
a:hover > .sf-sub-indicator,
|
113 |
+
a:active > .sf-sub-indicator,
|
114 |
+
li:hover > a > .sf-sub-indicator,
|
115 |
+
li.sfHover > a > .sf-sub-indicator {
|
116 |
+
background-position: -10px -100px; /* arrow hovers for modern browsers*/
|
117 |
+
}
|
118 |
+
|
119 |
+
/* point right for anchors in subs */
|
120 |
+
.sf-menu ul .sf-sub-indicator { background-position: -10px 0; }
|
121 |
+
.sf-menu ul a > .sf-sub-indicator { background-position: 0 0; }
|
122 |
+
/* apply hovers to modern browsers */
|
123 |
+
.sf-menu ul a:focus > .sf-sub-indicator,
|
124 |
+
.sf-menu ul a:hover > .sf-sub-indicator,
|
125 |
+
.sf-menu ul a:active > .sf-sub-indicator,
|
126 |
+
.sf-menu ul li:hover > a > .sf-sub-indicator,
|
127 |
+
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
|
128 |
+
background-position: -10px 0; /* arrow hovers for modern browsers*/
|
129 |
+
}
|
130 |
+
|
131 |
+
/*** shadows for all but IE6 ***/
|
132 |
+
.sf-shadow ul {
|
133 |
+
/*
|
134 |
+
padding: 0 8px 9px 0;
|
135 |
+
-moz-border-radius-bottomleft: 17px;
|
136 |
+
-moz-border-radius-topright: 17px;
|
137 |
+
-webkit-border-top-right-radius: 17px;
|
138 |
+
-webkit-border-bottom-left-radius: 17px;
|
139 |
+
*/
|
140 |
+
}
|
141 |
+
.sf-shadow ul.sf-shadow-off {
|
142 |
+
background: transparent;
|
143 |
+
}
|
144 |
+
.mw_menu_head{
|
145 |
+
border:1px solid #DDDDDD;
|
146 |
+
float:left;
|
147 |
+
width:100%;
|
148 |
+
border-bottom: 0px none;
|
149 |
+
}
|
150 |
+
.mw_menu_head h4.title{
|
151 |
+
color:#0A263C;
|
152 |
+
font-size:1.1em;
|
153 |
+
line-height:1.35em;
|
154 |
+
margin:0 0 0;
|
155 |
+
padding:2px 10px;
|
156 |
+
text-transform:uppercase;
|
157 |
+
}
|
158 |
+
.mw_shopby1{
|
159 |
+
margin-bottom: 1.3em;
|
160 |
+
}
|
161 |
+
.mw_shopby1_head {
|
162 |
+
background:transparent url(../images/layered_nav_head_bg.gif) no-repeat scroll 0 0;
|
163 |
+
height:24px;
|
164 |
+
margin:0;
|
165 |
+
}
|
166 |
+
.mw_shopby1 h4 {
|
167 |
+
background:#D5E8FF url(../images/layered_nav_narrowed_category_heading.gif) repeat scroll 0 0;
|
168 |
+
border-color:#fff;
|
169 |
+
border-style:solid none;
|
170 |
+
border-width:1px 0;
|
171 |
+
color:#1F5070;
|
172 |
+
font-size:1em;
|
173 |
+
font-weight:bold;
|
174 |
+
margin:0;
|
175 |
+
padding:3px 10px;
|
176 |
+
}
|
177 |
+
.mw_shopby1 p.block-subtitle{
|
178 |
+
background:#D5E8FF url(../images/layered_nav_narrowed_category_heading.gif) repeat scroll 0 0;
|
179 |
+
border-color:#fff;
|
180 |
+
border-style:solid none;
|
181 |
+
border-width:1px 0;
|
182 |
+
color:#1F5070;
|
183 |
+
font-size:1em;
|
184 |
+
font-weight:bold;
|
185 |
+
margin:0;
|
186 |
+
padding:3px 10px;
|
187 |
+
}
|
188 |
+
.mw_shopby1 .btn-remove{
|
189 |
+
float:right;
|
190 |
+
font-size:11px;
|
191 |
+
margin:4px 3px 1px 5px;
|
192 |
+
}
|
193 |
+
.mw_shopby1 .currently{
|
194 |
+
border-left: 1px solid #ddd;
|
195 |
+
border-right: 1px solid #ddd;
|
196 |
+
}
|
197 |
+
.mw_shopby1 .actions{
|
198 |
+
text-align: right;
|
199 |
+
border-left: 1px solid #ddd;
|
200 |
+
border-right: 1px solid #ddd;
|
201 |
+
}
|
202 |
+
.mw_shopby1_content{
|
203 |
+
border: 0px none;
|
204 |
+
padding-bottom: 7px !important;
|
205 |
+
}
|
206 |
+
.mw_shopby1 .narrowed-category {
|
207 |
+
border-left:1px solid #DDDDDD;
|
208 |
+
border-right:1px solid #DDDDDD;
|
209 |
+
width:99%;
|
210 |
+
}
|
211 |
+
.mw_shopby1 .sf-vertical, .mw_shopby1 .sf-vertical li {
|
212 |
+
width:99%;
|
213 |
+
}
|
214 |
+
.mw_shopby1 .narrowed-category{
|
215 |
+
width: 99%;
|
216 |
+
}
|
217 |
+
.mw_shopby1 .sf-menu li ul li{
|
218 |
+
border-bottom:1px solid #FFFFFF;
|
219 |
+
border-left:1px solid #FFFFFF;
|
220 |
+
border-top:1px solid #DDDDDD;
|
221 |
+
padding:0.55em 1em;
|
222 |
+
width: 87.5%;
|
223 |
+
}
|
224 |
+
.mw_shopby1 .sf-menu li ul li a{
|
225 |
+
float: left;
|
226 |
+
border-bottom:0 none;
|
227 |
+
border-left:0 none;
|
228 |
+
border-top:0 none;
|
229 |
+
padding:0;
|
230 |
+
text-decoration:none;
|
231 |
+
}
|
232 |
+
.mw_shopby1 .sf-menu li ul li a span.sf-sub-indicator {
|
233 |
+
top:3px;
|
234 |
+
}
|
235 |
+
.mw_shopby1 .sf-menu li ul li :hover, .sf-menu li ul li .sfHover,
|
236 |
+
.mw_shopby1 .sf-menu li ul li a:focus, .sf-menu li ul li a:hover, .sf-menu li ul li :active {
|
237 |
+
background: #fff;
|
238 |
+
outline: 0;
|
239 |
+
}
|
240 |
+
.display{
|
241 |
+
border: 0px none !important;
|
242 |
+
}
|
243 |
+
.display_li span.sf-sub-indicator{
|
244 |
+
display: none;
|
245 |
+
}
|
skin/frontend/default/freepop/smartmenu/images/Thumbs.db
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/arrow-cat-active.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/arrow-cat-active.png
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/arrow-cat-hover.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/arrow-cat-hover.png
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/arrow-cat.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/arrow-cat.png
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/arrows-ffffff.png
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/base_mini_head_bg.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/bg-cate-active.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/bg-cate-active2.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/bg-li.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/bg_block_content.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/bg_listmenu.png
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/bg_listmenu2.png
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/icon.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/icon.png
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/icon_01.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/layered_nav_head_bg.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/layered_nav_narrowed_category_heading.gif
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/images/shadow.png
ADDED
Binary file
|
skin/frontend/default/freepop/smartmenu/js/accordion.js
ADDED
@@ -0,0 +1,272 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Accordion 1.3 - jQuery menu widget
|
3 |
+
*
|
4 |
+
* Copyright (c) 2006 J�rn Zaefferer, Frank Marcia
|
5 |
+
*
|
6 |
+
* Dual licensed under the MIT and GPL licenses:
|
7 |
+
* http://www.opensource.org/licenses/mit-license.php
|
8 |
+
* http://www.gnu.org/licenses/gpl.html
|
9 |
+
*
|
10 |
+
* Revision: $Id: jquery.accordion.js 1524 2007-03-13 20:09:19Z joern $
|
11 |
+
*
|
12 |
+
*/
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Make the selected elements Accordion widgets.
|
16 |
+
*
|
17 |
+
* Semantic requirements:
|
18 |
+
*
|
19 |
+
* If the structure of your container is flat with unique
|
20 |
+
* tags for header and content elements, eg. a definition list
|
21 |
+
* (dl > dt + dd), you don't have to specify any options at
|
22 |
+
* all.
|
23 |
+
*
|
24 |
+
* If your structure uses the same elements for header and
|
25 |
+
* content or uses some kind of nested structure, you have to
|
26 |
+
* specify the header elements, eg. via class, see the second example.
|
27 |
+
*
|
28 |
+
* Use activate(Number) to change the active content programmatically.
|
29 |
+
*
|
30 |
+
* A change event is triggered everytime the accordion changes. Apart from
|
31 |
+
* the event object, all arguments are jQuery objects.
|
32 |
+
* Arguments: event, newHeader, oldHeader, newContent, oldContent
|
33 |
+
*
|
34 |
+
* @example jQuery('#nav').Accordion();
|
35 |
+
* @before <dl id="nav">
|
36 |
+
* <dt>Header 1</dt>
|
37 |
+
* <dd>Content 1</dd>
|
38 |
+
* <dt>Header 2</dt>
|
39 |
+
* <dd>Content 2</dd>
|
40 |
+
* </dl>
|
41 |
+
* @desc Creates an Accordion from the given definition list
|
42 |
+
*
|
43 |
+
* @example jQuery('#nav').Accordion({
|
44 |
+
* header: 'div.title'
|
45 |
+
* });
|
46 |
+
* @before <div id="nav">
|
47 |
+
* <div>
|
48 |
+
* <div class="title">Header 1</div>
|
49 |
+
* <div>Content 1</div>
|
50 |
+
* </div>
|
51 |
+
* <div>
|
52 |
+
* <div class="title">Header 2</div>
|
53 |
+
* <div>Content 2</div>
|
54 |
+
* </div>
|
55 |
+
* </div>
|
56 |
+
* @desc Creates an Accordion from the given div structure
|
57 |
+
*
|
58 |
+
* @example jQuery('#nav').Accordion({
|
59 |
+
* header: 'a.head'
|
60 |
+
* });
|
61 |
+
* @before <ul id="nav">
|
62 |
+
* <li>
|
63 |
+
* <a class="head">Header 1</a>
|
64 |
+
* <ul>
|
65 |
+
* <li><a href="#">Link 1</a></li>
|
66 |
+
* <li><a href="#">Link 2></a></li>
|
67 |
+
* </ul>
|
68 |
+
* </li>
|
69 |
+
* <li>
|
70 |
+
* <a class="head">Header 2</a>
|
71 |
+
* <ul>
|
72 |
+
* <li><a href="#">Link 3</a></li>
|
73 |
+
* <li><a href="#">Link 4></a></li>
|
74 |
+
* </ul>
|
75 |
+
* </li>
|
76 |
+
* </ul>
|
77 |
+
* @desc Creates an Accordion from the given navigation list
|
78 |
+
*
|
79 |
+
* @example jQuery('#accordion').Accordion().change(function(event, newHeader, oldHeader, newContent, oldContent) {
|
80 |
+
* jQuery('#status').html(newHeader.text());
|
81 |
+
* });
|
82 |
+
* @desc Updates the element with id status with the text of the selected header every time the accordion changes
|
83 |
+
*
|
84 |
+
* @param Map options key/value pairs of optional settings.
|
85 |
+
* @option String|Element|jQuery|Boolean active Selector for the active element, default is the first child, set to false to display none at start
|
86 |
+
* @option String|Element|jQuery header Selector for the header element, eg. div.title, a.head, default is the first child's tagname
|
87 |
+
* @option String|Number showSpeed Speed for the slideIn, default is 'slow' (for numbers: smaller = faster)
|
88 |
+
* @option String|Number hideSpeed Speed for the slideOut, default is 'fast' (for numbers: smaller = faster)
|
89 |
+
* @option String selectedClass Class for active header elements, default is 'selected'
|
90 |
+
* @option Boolean alwaysOpen Whether there must be one content element open, default is true.
|
91 |
+
* @option Boolean animated Set to false to disable animations. Default: true
|
92 |
+
* @option String event The event on which to trigger the accordion, eg. "mouseover". Default: "click"
|
93 |
+
*
|
94 |
+
* @type jQuery
|
95 |
+
* @see activate(Number)
|
96 |
+
* @name Accordion
|
97 |
+
* @cat Plugins/Accordion
|
98 |
+
*/
|
99 |
+
|
100 |
+
/**
|
101 |
+
* Activate a content part of the Accordion programmatically at the given zero-based index.
|
102 |
+
*
|
103 |
+
* If the index is not specified, it defaults to zero, if it is an invalid index, eg. a string,
|
104 |
+
* nothing happens.
|
105 |
+
*
|
106 |
+
* @example jQuery('#accordion').activate(1);
|
107 |
+
* @desc Activate the second content of the Accordion contained in <div id="accordion">.
|
108 |
+
*
|
109 |
+
* @example jQuery('#nav').activate();
|
110 |
+
* @desc Activate the first content of the Accordion contained in <ul id="nav">.
|
111 |
+
*
|
112 |
+
* @param Number index (optional) An Integer specifying the zero-based index of the content to be
|
113 |
+
* activated. Default: 0
|
114 |
+
*
|
115 |
+
* @type jQuery
|
116 |
+
* @name activate
|
117 |
+
* @cat Plugins/Accordion
|
118 |
+
*/
|
119 |
+
|
120 |
+
/**
|
121 |
+
* Override the default settings of the Accordion. Affects only following plugin calls.
|
122 |
+
*
|
123 |
+
* @example jQuery.Accordion.setDefaults({
|
124 |
+
* showSpeed: 1000,
|
125 |
+
* hideSpeed: 150
|
126 |
+
* });
|
127 |
+
*
|
128 |
+
* @param Map options key/value pairs of optional settings, see Accordion() for details
|
129 |
+
*
|
130 |
+
* @type jQuery
|
131 |
+
* @name setDefaults
|
132 |
+
* @cat Plugins/Accordion
|
133 |
+
*/
|
134 |
+
|
135 |
+
jQuery.fn.extend({
|
136 |
+
// nextUntil is necessary, would be nice to have this in jQuery core
|
137 |
+
nextUntil: function(expr) {
|
138 |
+
var match = [];
|
139 |
+
|
140 |
+
// We need to figure out which elements to push onto the array
|
141 |
+
this.each(function(){
|
142 |
+
// Traverse through the sibling nodes
|
143 |
+
for( var i = this.nextSibling; i; i = i.nextSibling ) {
|
144 |
+
// Make sure that we're only dealing with elements
|
145 |
+
if ( i.nodeType != 1 ) continue;
|
146 |
+
|
147 |
+
// If we find a match then we need to stop
|
148 |
+
//if ( jQuery.filter( expr, [i] ).r.length ) break;
|
149 |
+
|
150 |
+
// Otherwise, add it on to the stack
|
151 |
+
match.push( i );
|
152 |
+
}
|
153 |
+
});
|
154 |
+
|
155 |
+
return this.pushStack( match );
|
156 |
+
},
|
157 |
+
// the plugin method itself
|
158 |
+
Accordion: function(settings) {
|
159 |
+
// setup configuration
|
160 |
+
settings = jQuery.extend({}, jQuery.Accordion.defaults, {
|
161 |
+
// define context defaults
|
162 |
+
//header: jQuery(':first-child', this)[0].tagName // take first childs tagName as header
|
163 |
+
}, settings);
|
164 |
+
|
165 |
+
// calculate active if not specified, using the first header
|
166 |
+
var container = this,
|
167 |
+
active = settings.active
|
168 |
+
? jQuery(settings.active, this)
|
169 |
+
: settings.active === false
|
170 |
+
? jQuery("<div>")
|
171 |
+
: jQuery(settings.header, this).eq(0),
|
172 |
+
running = 0;
|
173 |
+
|
174 |
+
container.find(settings.header)
|
175 |
+
.not(active || "")
|
176 |
+
.nextUntil(settings.header)
|
177 |
+
.hide();
|
178 |
+
active.addClass(settings.selectedClass);
|
179 |
+
|
180 |
+
function clickHandler(event) {
|
181 |
+
// get the click target
|
182 |
+
var clicked = jQuery(event.target);
|
183 |
+
|
184 |
+
// due to the event delegation model, we have to check if one
|
185 |
+
// of the parent elements is our actual header, and find that
|
186 |
+
if ( clicked.parents(settings.header).length ) {
|
187 |
+
while ( !clicked.is(settings.header) ) {
|
188 |
+
clicked = clicked.parent();
|
189 |
+
}
|
190 |
+
}
|
191 |
+
|
192 |
+
var clickedActive = clicked[0] == active[0];
|
193 |
+
|
194 |
+
// if animations are still active, or the active header is the target, ignore click
|
195 |
+
if(running || (settings.alwaysOpen && clickedActive) || !clicked.is(settings.header))
|
196 |
+
return;
|
197 |
+
|
198 |
+
// switch classes
|
199 |
+
active.toggleClass(settings.selectedClass);
|
200 |
+
if ( !clickedActive ) {
|
201 |
+
clicked.addClass(settings.selectedClass);
|
202 |
+
}
|
203 |
+
|
204 |
+
// find elements to show and hide
|
205 |
+
var toShow = clicked.nextUntil(settings.header),
|
206 |
+
toHide = active.nextUntil(settings.header),
|
207 |
+
data = [clicked, active, toShow, toHide];
|
208 |
+
active = clickedActive ? jQuery([]) : clicked;
|
209 |
+
// count elements to animate
|
210 |
+
running = toHide.size() + toShow.size();
|
211 |
+
var finished = function(cancel) {
|
212 |
+
running = cancel ? 0 : --running;
|
213 |
+
if ( running )
|
214 |
+
return;
|
215 |
+
|
216 |
+
// trigger custom change event
|
217 |
+
container.trigger("change", data);
|
218 |
+
};
|
219 |
+
// TODO if hideSpeed is set to zero, animations are crappy
|
220 |
+
// workaround: use hide instead
|
221 |
+
// solution: animate should check for speed of 0 and do something about it
|
222 |
+
if ( settings.animated ) {
|
223 |
+
if ( !settings.alwaysOpen && clickedActive ) {
|
224 |
+
toShow.slideToggle(settings.showSpeed);
|
225 |
+
finished(true);
|
226 |
+
} else {
|
227 |
+
toHide.filter(":hidden").each(finished).end().filter(":visible").slideUp(settings.hideSpeed, finished);
|
228 |
+
toShow.slideDown(settings.showSpeed, finished);
|
229 |
+
}
|
230 |
+
} else {
|
231 |
+
if ( !settings.alwaysOpen && clickedActive ) {
|
232 |
+
toShow.toggle();
|
233 |
+
} else {
|
234 |
+
toHide.hide();
|
235 |
+
toShow.show();
|
236 |
+
}
|
237 |
+
finished(true);
|
238 |
+
}
|
239 |
+
|
240 |
+
return false;
|
241 |
+
};
|
242 |
+
function activateHandlder(event, index) {
|
243 |
+
// call clickHandler with custom event
|
244 |
+
clickHandler({
|
245 |
+
target: jQuery(settings.header, this)[index]
|
246 |
+
});
|
247 |
+
};
|
248 |
+
|
249 |
+
return container
|
250 |
+
.bind(settings.event, clickHandler)
|
251 |
+
.bind("activate", activateHandlder);
|
252 |
+
},
|
253 |
+
// programmatic triggering
|
254 |
+
activate: function(index) {
|
255 |
+
return this.trigger('activate', [index || 0]);
|
256 |
+
}
|
257 |
+
});
|
258 |
+
|
259 |
+
jQuery.Accordion = {};
|
260 |
+
jQuery.extend(jQuery.Accordion, {
|
261 |
+
defaults: {
|
262 |
+
selectedClass: "selected",
|
263 |
+
showSpeed: 'slow',
|
264 |
+
hideSpeed: 'fast',
|
265 |
+
alwaysOpen: true,
|
266 |
+
animated: true,
|
267 |
+
event: "click"
|
268 |
+
},
|
269 |
+
setDefaults: function(settings) {
|
270 |
+
jQuery.extend(jQuery.Accordion.defaults, settings);
|
271 |
+
}
|
272 |
+
});
|
skin/frontend/default/freepop/smartmenu/js/accordion_menu.js
ADDED
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function(){
|
2 |
+
// applying the settings
|
3 |
+
jQuery('#theMenu_acc').Accordion({
|
4 |
+
active: 'span.selected',
|
5 |
+
header: 'span.head',
|
6 |
+
alwaysOpen: false,
|
7 |
+
animated: true,
|
8 |
+
showSpeed: 400,
|
9 |
+
hideSpeed: 800
|
10 |
+
});
|
11 |
+
|
12 |
+
jQuery('#shopby').Accordion({
|
13 |
+
active: 'span.selected',
|
14 |
+
header: 'span.title',
|
15 |
+
alwaysOpen: false,
|
16 |
+
animated: true,
|
17 |
+
showSpeed: 400,
|
18 |
+
hideSpeed: 800
|
19 |
+
});
|
20 |
+
});
|
21 |
+
function initMenu() {
|
22 |
+
jQuery('#menu ol').show();
|
23 |
+
jQuery('#menu li a').click(
|
24 |
+
function() {
|
25 |
+
jQuery(this).next().slideToggle('normal');
|
26 |
+
}
|
27 |
+
);
|
28 |
+
jQuery('#menu li a.title_auto').click(
|
29 |
+
function() {
|
30 |
+
jQuery(this).toggleClass("select_auto");
|
31 |
+
}
|
32 |
+
);
|
33 |
+
|
34 |
+
jQuery('#menu_collap ol').hide();
|
35 |
+
jQuery('#menu_collap li a').click(
|
36 |
+
function() {
|
37 |
+
jQuery(this).next().slideToggle('normal');
|
38 |
+
}
|
39 |
+
);
|
40 |
+
jQuery('#menu_collap li a.select_collap').click(
|
41 |
+
function() {
|
42 |
+
jQuery(this).toggleClass("title_collap");
|
43 |
+
}
|
44 |
+
);
|
45 |
+
|
46 |
+
jQuery('#cate_collap ul').hide();
|
47 |
+
jQuery('#cate_collap li a.title_collap').click(
|
48 |
+
function() {
|
49 |
+
jQuery(this).next().slideToggle('normal');
|
50 |
+
}
|
51 |
+
);
|
52 |
+
jQuery('#cate_collap li a.title_collap').click(
|
53 |
+
function() {
|
54 |
+
jQuery(this).toggleClass("select_auto");
|
55 |
+
}
|
56 |
+
);
|
57 |
+
}
|
58 |
+
jQuery(document).ready(function() {initMenu();});
|
59 |
+
|
60 |
+
|
61 |
+
|
62 |
+
|
skin/frontend/default/freepop/smartmenu/js/hoverIntent.js
ADDED
@@ -0,0 +1,84 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function($){
|
2 |
+
/* hoverIntent by Brian Cherne */
|
3 |
+
$.fn.hoverIntent = function(f,g) {
|
4 |
+
// default configuration options
|
5 |
+
var cfg = {
|
6 |
+
sensitivity: 7,
|
7 |
+
interval: 100,
|
8 |
+
timeout: 0
|
9 |
+
};
|
10 |
+
// override configuration options with user supplied object
|
11 |
+
cfg = $.extend(cfg, g ? { over: f, out: g } : f );
|
12 |
+
|
13 |
+
// instantiate variables
|
14 |
+
// cX, cY = current X and Y position of mouse, updated by mousemove event
|
15 |
+
// pX, pY = previous X and Y position of mouse, set by mouseover and polling interval
|
16 |
+
var cX, cY, pX, pY;
|
17 |
+
|
18 |
+
// A private function for getting mouse position
|
19 |
+
var track = function(ev) {
|
20 |
+
cX = ev.pageX;
|
21 |
+
cY = ev.pageY;
|
22 |
+
};
|
23 |
+
|
24 |
+
// A private function for comparing current and previous mouse position
|
25 |
+
var compare = function(ev,ob) {
|
26 |
+
ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
|
27 |
+
// compare mouse positions to see if they've crossed the threshold
|
28 |
+
if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < cfg.sensitivity ) {
|
29 |
+
$(ob).unbind("mousemove",track);
|
30 |
+
// set hoverIntent state to true (so mouseOut can be called)
|
31 |
+
ob.hoverIntent_s = 1;
|
32 |
+
return cfg.over.apply(ob,[ev]);
|
33 |
+
} else {
|
34 |
+
// set previous coordinates for next time
|
35 |
+
pX = cX; pY = cY;
|
36 |
+
// use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs)
|
37 |
+
ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval );
|
38 |
+
}
|
39 |
+
};
|
40 |
+
|
41 |
+
// A private function for delaying the mouseOut function
|
42 |
+
var delay = function(ev,ob) {
|
43 |
+
ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
|
44 |
+
ob.hoverIntent_s = 0;
|
45 |
+
return cfg.out.apply(ob,[ev]);
|
46 |
+
};
|
47 |
+
|
48 |
+
// A private function for handling mouse 'hovering'
|
49 |
+
var handleHover = function(e) {
|
50 |
+
// next three lines copied from jQuery.hover, ignore children onMouseOver/onMouseOut
|
51 |
+
var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget;
|
52 |
+
while ( p && p != this ) { try { p = p.parentNode; } catch(e) { p = this; } }
|
53 |
+
if ( p == this ) { return false; }
|
54 |
+
|
55 |
+
// copy objects to be passed into t (required for event object to be passed in IE)
|
56 |
+
var ev = jQuery.extend({},e);
|
57 |
+
var ob = this;
|
58 |
+
|
59 |
+
// cancel hoverIntent timer if it exists
|
60 |
+
if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); }
|
61 |
+
|
62 |
+
// else e.type == "onmouseover"
|
63 |
+
if (e.type == "mouseover") {
|
64 |
+
// set "previous" X and Y position based on initial entry point
|
65 |
+
pX = ev.pageX; pY = ev.pageY;
|
66 |
+
// update "current" X and Y position based on mousemove
|
67 |
+
$(ob).bind("mousemove",track);
|
68 |
+
// start polling interval (self-calling timeout) to compare mouse coordinates over time
|
69 |
+
if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );}
|
70 |
+
|
71 |
+
// else e.type == "onmouseout"
|
72 |
+
} else {
|
73 |
+
// unbind expensive mousemove event
|
74 |
+
$(ob).unbind("mousemove",track);
|
75 |
+
// if hoverIntent state is true, then call the mouseOut function after the specified delay
|
76 |
+
if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );}
|
77 |
+
}
|
78 |
+
};
|
79 |
+
|
80 |
+
// bind the function to the two event listeners
|
81 |
+
return this.mouseover(handleHover).mouseout(handleHover);
|
82 |
+
};
|
83 |
+
|
84 |
+
})(jQuery);
|
skin/frontend/default/freepop/smartmenu/js/jquery-accordion-menu.js
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(document).ready(function(){
|
2 |
+
jQuery("ul.sf-menu").superfish({
|
3 |
+
animation: {height:'show'}, // slide-down effect without fade-in
|
4 |
+
delay: 1200 // 1.2 second delay on mouseout
|
5 |
+
});
|
6 |
+
});
|
7 |
+
|
skin/frontend/default/freepop/smartmenu/js/jquery.bgiframe.min.js
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* Copyright (c) 2006 Brandon Aaron (http://brandonaaron.net)
|
2 |
+
* Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
|
3 |
+
* and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
|
4 |
+
*
|
5 |
+
* $LastChangedDate: 2007-06-19 20:25:28 -0500 (Tue, 19 Jun 2007) $
|
6 |
+
* $Rev: 2111 $
|
7 |
+
*
|
8 |
+
* Version 2.1
|
9 |
+
*/
|
10 |
+
(function($){$.fn.bgIframe=$.fn.bgiframe=function(s){if($.browser.msie&&parseInt($.browser.version)<=6){s=$.extend({top:'auto',left:'auto',width:'auto',height:'auto',opacity:true,src:'javascript:false;'},s||{});var prop=function(n){return n&&n.constructor==Number?n+'px':n;},html='<iframe class="bgiframe"frameborder="0"tabindex="-1"src="'+s.src+'"'+'style="display:block;position:absolute;z-index:-1;'+(s.opacity!==false?'filter:Alpha(Opacity=\'0\');':'')+'top:'+(s.top=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\')':prop(s.top))+';'+'left:'+(s.left=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\')':prop(s.left))+';'+'width:'+(s.width=='auto'?'expression(this.parentNode.offsetWidth+\'px\')':prop(s.width))+';'+'height:'+(s.height=='auto'?'expression(this.parentNode.offsetHeight+\'px\')':prop(s.height))+';'+'"/>';return this.each(function(){if($('> iframe.bgiframe',this).length==0)this.insertBefore(document.createElement(html),this.firstChild);});}return this;};if(!$.browser.version)$.browser.version=navigator.userAgent.toLowerCase().match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)[1];})(jQuery);
|
skin/frontend/default/freepop/smartmenu/js/jquery.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('7(1C 1w.6=="T"){1w.T=1w.T;B 6=u(a,c){7(1w==q)v 1p 6(a,c);a=a||17;7(6.1t(a))v 1p 6(17)[6.E.27?"27":"2O"](a);7(1C a=="23"){B m=/^[^<]*(<(.|\\s)+>)[^>]*$/.2Q(a);7(m)a=6.3k([m[1]]);J v 1p 6(c).2o(a)}v q.6r(a.1l==2y&&a||(a.3Y||a.I&&a!=1w&&!a.24&&a[0]!=T&&a[0].24)&&6.3M(a)||[a])};7(1C $!="T")6.2S$=$;B $=6;6.E=6.8p={3Y:"1.1.2",8q:u(){v q.I},I:0,2b:u(1T){v 1T==T?6.3M(q):q[1T]},2r:u(a){B L=6(a);L.6p=q;v L},6r:u(a){q.I=0;[].1g.14(q,a);v q},K:u(E,1E){v 6.K(q,E,1E)},2h:u(1c){B 4c=-1;q.K(u(i){7(q==1c)4c=i});v 4c},1I:u(1Y,O,C){B 1c=1Y;7(1Y.1l==3t)7(O==T)v q.I&&6[C||"1I"](q[0],1Y)||T;J{1c={};1c[1Y]=O}v q.K(u(2h){P(B H 1x 1c)6.1I(C?q.1q:q,H,6.H(q,1c[H],C,2h,H))})},1m:u(1Y,O){v q.1I(1Y,O,"30")},2L:u(e){7(1C e=="23")v q.3u().3r(17.8t(e));B t="";6.K(e||q,u(){6.K(q.2I,u(){7(q.24!=8)t+=q.24!=1?q.60:6.E.2L([q])})});v t},2K:u(){B a=6.3k(1A);v q.K(u(){B b=a[0].3l(U);q.11.2X(b,q);22(b.1b)b=b.1b;b.4C(q)})},3r:u(){v q.3j(1A,U,1,u(a){q.4C(a)})},5i:u(){v q.3j(1A,U,-1,u(a){q.2X(a,q.1b)})},5j:u(){v q.3j(1A,12,1,u(a){q.11.2X(a,q)})},5t:u(){v q.3j(1A,12,-1,u(a){q.11.2X(a,q.2e)})},4g:u(){v q.6p||6([])},2o:u(t){v q.2r(6.31(q,u(a){v 6.2o(t,a)}),t)},4Y:u(4N){v q.2r(6.31(q,u(a){B a=a.3l(4N!=T?4N:U);a.$1H=16;v a}))},1D:u(t){v q.2r(6.1t(t)&&6.2q(q,u(2z,2h){v t.14(2z,[2h])})||6.3z(t,q))},2g:u(t){v q.2r(t.1l==3t&&6.3z(t,q,U)||6.2q(q,u(a){v(t.1l==2y||t.3Y)?6.3y(a,t)<0:a!=t}))},1M:u(t){v q.2r(6.2k(q.2b(),t.1l==3t?6(t).2b():t.I!=T&&(!t.1f||t.1f=="8v")?t:[t]))},4l:u(1s){v 1s?6.1D(1s,q).r.I>0:12},1a:u(1a){v 1a==T?(q.I?q[0].O:16):q.1I("O",1a)},4U:u(1a){v 1a==T?(q.I?q[0].2t:16):q.3u().3r(1a)},3j:u(1E,1P,3Z,E){B 4Y=q.I>1;B a=6.3k(1E);7(3Z<0)a.8w();v q.K(u(){B 1c=q;7(1P&&6.1f(q,"1P")&&6.1f(a[0],"3m"))1c=q.5J("20")[0]||q.4C(17.6n("20"));6.K(a,u(){E.14(1c,[4Y?q.3l(U):q])})})}};6.1z=6.E.1z=u(){B 1O=1A[0],a=1;7(1A.I==1){1O=q;a=0}B H;22(H=1A[a++])P(B i 1x H)1O[i]=H[i];v 1O};6.1z({8x:u(){7(6.2S$)$=6.2S$;v 6},1t:u(E){v!!E&&1C E!="23"&&!E.1f&&1C E[0]=="T"&&/u/i.1n(E+"")},4B:u(D){v D.66&&D.5I&&!D.5I.64},1f:u(D,Y){v D.1f&&D.1f.3K()==Y.3K()},K:u(1c,E,1E){7(1c.I==T)P(B i 1x 1c)E.14(1c[i],1E||[i,1c[i]]);J P(B i=0,6q=1c.I;i<6q;i++)7(E.14(1c[i],1E||[i,1c[i]])===12)3O;v 1c},H:u(D,O,C,2h,H){7(6.1t(O))O=O.3n(D,[2h]);B 6s=/z-?2h|7P-?8A|1d|58|8B-?28/i;v O&&O.1l==3Q&&C=="30"&&!6s.1n(H)?O+"4S":O},19:{1M:u(D,c){6.K(c.3o(/\\s+/),u(i,Q){7(!6.19.2V(D.19,Q))D.19+=(D.19?" ":"")+Q})},2f:u(D,c){D.19=c?6.2q(D.19.3o(/\\s+/),u(Q){v!6.19.2V(c,Q)}).6t(" "):""},2V:u(t,c){t=t.19||t;c=c.1R(/([\\.\\\\\\+\\*\\?\\[\\^\\]\\$\\(\\)\\{\\}\\=\\!\\<\\>\\|\\:])/g,"\\\\$1");v t&&1p 4v("(^|\\\\s)"+c+"(\\\\s|$)").1n(t)}},4d:u(e,o,f){P(B i 1x o){e.1q["1N"+i]=e.1q[i];e.1q[i]=o[i]}f.14(e,[]);P(B i 1x o)e.1q[i]=e.1q["1N"+i]},1m:u(e,p){7(p=="28"||p=="3V"){B 1N={},46,3P,d=["7d","8C","8D","8E"];6.K(d,u(){1N["8F"+q]=0;1N["8G"+q+"8H"]=0});6.4d(e,1N,u(){7(6.1m(e,"1h")!="1Z"){46=e.8I;3P=e.8J}J{e=6(e.3l(U)).2o(":4j").5l("2Z").4g().1m({4n:"1G",45:"8K",1h:"2D",7I:"0",8M:"0"}).5z(e.11)[0];B 3d=6.1m(e.11,"45");7(3d==""||3d=="4b")e.11.1q.45="6x";46=e.6y;3P=e.6z;7(3d==""||3d=="4b")e.11.1q.45="4b";e.11.33(e)}});v p=="28"?46:3P}v 6.30(e,p)},30:u(D,H,53){B L;7(H=="1d"&&6.W.1j)v 6.1I(D.1q,"1d");7(H=="4h"||H=="2v")H=6.W.1j?"3T":"2v";7(!53&&D.1q[H])L=D.1q[H];J 7(17.44&&17.44.4W){7(H=="2v"||H=="3T")H="4h";H=H.1R(/([A-Z])/g,"-$1").4m();B Q=17.44.4W(D,16);7(Q)L=Q.55(H);J 7(H=="1h")L="1Z";J 6.4d(D,{1h:"2D"},u(){B c=17.44.4W(q,"");L=c&&c.55(H)||""})}J 7(D.51){B 56=H.1R(/\\-(\\w)/g,u(m,c){v c.3K()});L=D.51[H]||D.51[56]}v L},3k:u(a){B r=[];6.K(a,u(i,1r){7(!1r)v;7(1r.1l==3Q)1r=1r.6C();7(1C 1r=="23"){B s=6.35(1r),1V=17.6n("1V"),2i=[];B 2K=!s.18("<1u")&&[1,"<42>","</42>"]||(!s.18("<6D")||!s.18("<20")||!s.18("<6E"))&&[1,"<1P>","</1P>"]||!s.18("<3m")&&[2,"<1P><20>","</20></1P>"]||(!s.18("<6F")||!s.18("<6G"))&&[3,"<1P><20><3m>","</3m></20></1P>"]||[0,"",""];1V.2t=2K[1]+s+2K[2];22(2K[0]--)1V=1V.1b;7(6.W.1j){7(!s.18("<1P")&&s.18("<20")<0)2i=1V.1b&&1V.1b.2I;J 7(2K[1]=="<1P>"&&s.18("<20")<0)2i=1V.2I;P(B n=2i.I-1;n>=0;--n)7(6.1f(2i[n],"20")&&!2i[n].2I.I)2i[n].11.33(2i[n])}1r=[];P(B i=0,l=1V.2I.I;i<l;i++)1r.1g(1V.2I[i])}7(1r.I===0&&!6.1f(1r,"3w"))v;7(1r[0]==T||6.1f(1r,"3w"))r.1g(1r);J r=6.2k(r,1r)});v r},1I:u(D,Y,O){B 2j=6.4B(D)?{}:{"P":"6J","6L":"19","4h":6.W.1j?"3T":"2v",2v:6.W.1j?"3T":"2v",2t:"2t",19:"19",O:"O",2W:"2W",2Z:"2Z",89:"6N",2Y:"2Y"};7(Y=="1d"&&6.W.1j&&O!=T){D.58=1;v D.1D=D.1D.1R(/4i\\([^\\)]*\\)/6O,"")+(O==1?"":"4i(1d="+O*6g+")")}J 7(Y=="1d"&&6.W.1j)v D.1D?4T(D.1D.6P(/4i\\(1d=(.*)\\)/)[1])/6g:1;7(Y=="1d"&&6.W.3h&&O==1)O=0.6R;7(2j[Y]){7(O!=T)D[2j[Y]]=O;v D[2j[Y]]}J 7(O==T&&6.W.1j&&6.1f(D,"3w")&&(Y=="81"||Y=="80"))v D.6T(Y).60;J 7(D.66){7(O!=T)D.6V(Y,O);7(6.W.1j&&/5E|3e/.1n(Y)&&!6.4B(D))v D.36(Y,2);v D.36(Y)}J{Y=Y.1R(/-([a-z])/6W,u(z,b){v b.3K()});7(O!=T)D[Y]=O;v D[Y]}},35:u(t){v t.1R(/^\\s+|\\s+$/g,"")},3M:u(a){B r=[];7(a.1l!=2y)P(B i=0,2R=a.I;i<2R;i++)r.1g(a[i]);J r=a.3N(0);v r},3y:u(b,a){P(B i=0,2R=a.I;i<2R;i++)7(a[i]==b)v i;v-1},2k:u(2u,3H){B r=[].3N.3n(2u,0);P(B i=0,5b=3H.I;i<5b;i++)7(6.3y(3H[i],r)==-1)2u.1g(3H[i]);v 2u},2q:u(1U,E,4k){7(1C E=="23")E=1p 4w("a","i","v "+E);B 1i=[];P(B i=0,2z=1U.I;i<2z;i++)7(!4k&&E(1U[i],i)||4k&&!E(1U[i],i))1i.1g(1U[i]);v 1i},31:u(1U,E){7(1C E=="23")E=1p 4w("a","v "+E);B 1i=[],r=[];P(B i=0,2z=1U.I;i<2z;i++){B 1a=E(1U[i],i);7(1a!==16&&1a!=T){7(1a.1l!=2y)1a=[1a];1i=1i.6Z(1a)}}B r=1i.I?[1i[0]]:[];5f:P(B i=1,5e=1i.I;i<5e;i++){P(B j=0;j<i;j++)7(1i[i]==r[j])5F 5f;r.1g(1i[i])}v r}});1p u(){B b=7L.71.4m();6.W={2N:/5D/.1n(b),3f:/3f/.1n(b),1j:/1j/.1n(b)&&!/3f/.1n(b),3h:/3h/.1n(b)&&!/(72|5D)/.1n(b)};6.7H=!6.W.1j||17.74=="75"};6.K({5u:"a.11",4z:"6.4z(a)",76:"6.2a(a,2,\'2e\')",7D:"6.2a(a,2,\'5s\')",78:"6.2B(a.11.1b,a)",79:"6.2B(a.1b)"},u(i,n){6.E[i]=u(a){B L=6.31(q,n);7(a&&1C a=="23")L=6.3z(a,L);v q.2r(L)}});6.K({5z:"3r",7b:"5i",2X:"5j",7e:"5t"},u(i,n){6.E[i]=u(){B a=1A;v q.K(u(){P(B j=0,2R=a.I;j<2R;j++)6(a[j])[n](q)})}});6.K({5l:u(1Y){6.1I(q,1Y,"");q.7g(1Y)},7h:u(c){6.19.1M(q,c)},7i:u(c){6.19.2f(q,c)},7k:u(c){6.19[6.19.2V(q,c)?"2f":"1M"](q,c)},2f:u(a){7(!a||6.1D(a,[q]).r.I)q.11.33(q)},3u:u(){22(q.1b)q.33(q.1b)}},u(i,n){6.E[i]=u(){v q.K(n,1A)}});6.K(["5q","5n","5p","5v"],u(i,n){6.E[n]=u(1T,E){v q.1D(":"+n+"("+1T+")",E)}});6.K(["28","3V"],u(i,n){6.E[n]=u(h){v h==T?(q.I?6.1m(q[0],n):16):q.1m(n,h.1l==3t?h:h+"4S")}});6.1z({1s:{"":"m[2]==\'*\'||6.1f(a,m[2])","#":"a.36(\'2J\')==m[2]",":":{5n:"i<m[3]-0",5p:"i>m[3]-0",2a:"m[3]-0==i",5q:"m[3]-0==i",2u:"i==0",2T:"i==r.I-1",5R:"i%2==0",5S:"i%2","2a-3s":"6.2a(a.11.1b,m[3],\'2e\',a)==a","2u-3s":"6.2a(a.11.1b,1,\'2e\')==a","2T-3s":"6.2a(a.11.7n,1,\'5s\')==a","7p-3s":"6.2B(a.11.1b).I==1",5u:"a.1b",3u:"!a.1b",5v:"6.E.2L.14([a]).18(m[3])>=0",3i:\'a.C!="1G"&&6.1m(a,"1h")!="1Z"&&6.1m(a,"4n")!="1G"\',1G:\'a.C=="1G"||6.1m(a,"1h")=="1Z"||6.1m(a,"4n")=="1G"\',7v:"!a.2W",2W:"a.2W",2Z:"a.2Z",2Y:"a.2Y||6.1I(a,\'2Y\')",2L:"a.C==\'2L\'",4j:"a.C==\'4j\'",5x:"a.C==\'5x\'",4G:"a.C==\'4G\'",5y:"a.C==\'5y\'",4R:"a.C==\'4R\'",5A:"a.C==\'5A\'",5B:"a.C==\'5B\'",3x:\'a.C=="3x"||6.1f(a,"3x")\',5C:"/5C|42|7A|3x/i.1n(a.1f)"},".":"6.19.2V(a,m[2])","@":{"=":"z==m[4]","!=":"z!=m[4]","^=":"z&&!z.18(m[4])","$=":"z&&z.2U(z.I - m[4].I,m[4].I)==m[4]","*=":"z&&z.18(m[4])>=0","":"z",4u:u(m){v["",m[1],m[3],m[2],m[5]]},5P:"z=a[m[3]];7(!z||/5E|3e/.1n(m[3]))z=6.1I(a,m[3]);"},"[":"6.2o(m[2],a).I"},5M:[/^\\[ *(@)([a-2m-3C-]*) *([!*$^=]*) *(\'?"?)(.*?)\\4 *\\]/i,/^(\\[)\\s*(.*?(\\[.*?\\])?[^[]*?)\\s*\\]/,/^(:)([a-2m-3C-]*)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/i,/^([:.#]*)([a-2m-3C*-]*)/i],1Q:[/^(\\/?\\.\\.)/,"a.11",/^(>|\\/)/,"6.2B(a.1b)",/^(\\+)/,"6.2a(a,2,\'2e\')",/^(~)/,u(a){B s=6.2B(a.11.1b);v s.3N(6.3y(a,s)+1)}],3z:u(1s,1U,2g){B 1N,Q=[];22(1s&&1s!=1N){1N=1s;B f=6.1D(1s,1U,2g);1s=f.t.1R(/^\\s*,\\s*/,"");Q=2g?1U=f.r:6.2k(Q,f.r)}v Q},2o:u(t,1B){7(1C t!="23")v[t];7(1B&&!1B.24)1B=16;1B=1B||17;7(!t.18("//")){1B=1B.4H;t=t.2U(2,t.I)}J 7(!t.18("/")){1B=1B.4H;t=t.2U(1,t.I);7(t.18("/")>=1)t=t.2U(t.18("/"),t.I)}B L=[1B],2c=[],2T=16;22(t&&2T!=t){B r=[];2T=t;t=6.35(t).1R(/^\\/\\//i,"");B 3B=12;B 1J=/^[\\/>]\\s*([a-2m-9*-]+)/i;B m=1J.2Q(t);7(m){6.K(L,u(){P(B c=q.1b;c;c=c.2e)7(c.24==1&&(6.1f(c,m[1])||m[1]=="*"))r.1g(c)});L=r;t=t.1R(1J,"");7(t.18(" ")==0)5F;3B=U}J{P(B i=0;i<6.1Q.I;i+=2){B 1J=6.1Q[i];B m=1J.2Q(t);7(m){r=L=6.31(L,6.1t(6.1Q[i+1])?6.1Q[i+1]:u(a){v 40(6.1Q[i+1])});t=6.35(t.1R(1J,""));3B=U;3O}}}7(t&&!3B){7(!t.18(",")){7(L[0]==1B)L.4L();6.2k(2c,L);r=L=[1B];t=" "+t.2U(1,t.I)}J{B 34=/^([a-2m-3C-]+)(#)([a-2m-9\\\\*2S-]*)/i;B m=34.2Q(t);7(m){m=[0,m[2],m[3],m[1]]}J{34=/^([#.]?)([a-2m-9\\\\*2S-]*)/i;m=34.2Q(t)}7(m[1]=="#"&&L[L.I-1].4X){B 2l=L[L.I-1].4X(m[2]);7(6.W.1j&&2l&&2l.2J!=m[2])2l=6(\'[@2J="\'+m[2]+\'"]\',L[L.I-1])[0];L=r=2l&&(!m[3]||6.1f(2l,m[3]))?[2l]:[]}J{7(m[1]==".")B 4r=1p 4v("(^|\\\\s)"+m[2]+"(\\\\s|$)");6.K(L,u(){B 3E=m[1]!=""||m[0]==""?"*":m[2];7(6.1f(q,"7J")&&3E=="*")3E="3g";6.2k(r,m[1]!=""&&L.I!=1?6.4x(q,[],m[1],m[2],4r):q.5J(3E))});7(m[1]=="."&&L.I==1)r=6.2q(r,u(e){v 4r.1n(e.19)});7(m[1]=="#"&&L.I==1){B 5K=r;r=[];6.K(5K,u(){7(q.36("2J")==m[2]){r=[q];v 12}})}L=r}t=t.1R(34,"")}}7(t){B 1a=6.1D(t,r);L=r=1a.r;t=6.35(1a.t)}}7(L&&L[0]==1B)L.4L();6.2k(2c,L);v 2c},1D:u(t,r,2g){22(t&&/^[a-z[({<*:.#]/i.1n(t)){B p=6.5M,m;6.K(p,u(i,1J){m=1J.2Q(t);7(m){t=t.7M(m[0].I);7(6.1s[m[1]].4u)m=6.1s[m[1]].4u(m);v 12}});7(m[1]==":"&&m[2]=="2g")r=6.1D(m[3],r,U).r;J 7(m[1]=="."){B 1J=1p 4v("(^|\\\\s)"+m[2]+"(\\\\s|$)");r=6.2q(r,u(e){v 1J.1n(e.19||"")},2g)}J{B f=6.1s[m[1]];7(1C f!="23")f=6.1s[m[1]][m[2]];40("f = u(a,i){"+(6.1s[m[1]].5P||"")+"v "+f+"}");r=6.2q(r,f,2g)}}v{r:r,t:t}},4x:u(o,r,1Q,Y,1J){P(B s=o.1b;s;s=s.2e)7(s.24==1){B 1M=U;7(1Q==".")1M=s.19&&1J.1n(s.19);J 7(1Q=="#")1M=s.36("2J")==Y;7(1M)r.1g(s);7(1Q=="#"&&r.I)3O;7(s.1b)6.4x(s,r,1Q,Y,1J)}v r},4z:u(D){B 4A=[];B Q=D.11;22(Q&&Q!=17){4A.1g(Q);Q=Q.11}v 4A},2a:u(Q,1i,3Z,D){1i=1i||1;B 1T=0;P(;Q;Q=Q[3Z]){7(Q.24==1)1T++;7(1T==1i||1i=="5R"&&1T%2==0&&1T>1&&Q==D||1i=="5S"&&1T%2==1&&Q==D)v Q}},2B:u(n,D){B r=[];P(;n;n=n.2e){7(n.24==1&&(!D||n!=D))r.1g(n)}v r}});6.G={1M:u(S,C,1o,F){7(6.W.1j&&S.3L!=T)S=1w;7(F)1o.F=F;7(!1o.2A)1o.2A=q.2A++;7(!S.$1H)S.$1H={};B 38=S.$1H[C];7(!38){38=S.$1H[C]={};7(S["39"+C])38[0]=S["39"+C]}38[1o.2A]=1o;S["39"+C]=q.5Y;7(!q.1k[C])q.1k[C]=[];q.1k[C].1g(S)},2A:1,1k:{},2f:u(S,C,1o){7(S.$1H){B i,j,k;7(C&&C.C){1o=C.1o;C=C.C}7(C&&S.$1H[C])7(1o)5U S.$1H[C][1o.2A];J P(i 1x S.$1H[C])5U S.$1H[C][i];J P(j 1x S.$1H)q.2f(S,j);P(k 1x S.$1H[C])7(k){k=U;3O}7(!k)S["39"+C]=16}},1S:u(C,F,S){F=6.3M(F||[]);7(!S)6.K(q.1k[C]||[],u(){6.G.1S(C,F,q)});J{B 1o=S["39"+C],1a,E=6.1t(S[C]);7(1o){F.61(q.2j({C:C,1O:S}));7((1a=1o.14(S,F))!==12)q.4F=U}7(E&&1a!==12)S[C]();q.4F=12}},5Y:u(G){7(1C 6=="T"||6.G.4F)v;G=6.G.2j(G||1w.G||{});B 3R;B c=q.$1H[G.C];B 1E=[].3N.3n(1A,1);1E.61(G);P(B j 1x c){1E[0].1o=c[j];1E[0].F=c[j].F;7(c[j].14(q,1E)===12){G.2n();G.2H();3R=12}}7(6.W.1j)G.1O=G.2n=G.2H=G.1o=G.F=16;v 3R},2j:u(G){7(!G.1O&&G.63)G.1O=G.63;7(G.65==T&&G.67!=T){B e=17.4H,b=17.64;G.65=G.67+(e.68||b.68);G.7Y=G.7Z+(e.6c||b.6c)}7(6.W.2N&&G.1O.24==3){B 3a=G;G=6.1z({},3a);G.1O=3a.1O.11;G.2n=u(){v 3a.2n()};G.2H=u(){v 3a.2H()}}7(!G.2n)G.2n=u(){q.3R=12};7(!G.2H)G.2H=u(){q.82=U};v G}};6.E.1z({3U:u(C,F,E){v q.K(u(){6.G.1M(q,C,E||F,F)})},6u:u(C,F,E){v q.K(u(){6.G.1M(q,C,u(G){6(q).6f(G);v(E||F).14(q,1A)},F)})},6f:u(C,E){v q.K(u(){6.G.2f(q,C,E)})},1S:u(C,F){v q.K(u(){6.G.1S(C,F,q)})},3X:u(){B a=1A;v q.6j(u(e){q.4M=q.4M==0?1:0;e.2n();v a[q.4M].14(q,[e])||12})},83:u(f,g){u 4O(e){B p=(e.C=="41"?e.84:e.85)||e.86;22(p&&p!=q)2G{p=p.11}2w(e){p=q};7(p==q)v 12;v(e.C=="41"?f:g).14(q,[e])}v q.41(4O).6k(4O)},27:u(f){7(6.3W)f.14(17,[6]);J{6.3c.1g(u(){v f.14(q,[6])})}v q}});6.1z({3W:12,3c:[],27:u(){7(!6.3W){6.3W=U;7(6.3c){6.K(6.3c,u(){q.14(17)});6.3c=16}7(6.W.3h||6.W.3f)17.87("6o",6.27,12)}}});1p u(){6.K(("88,8a,2O,8b,8d,52,6j,8e,"+"8f,8g,8h,41,6k,8j,42,"+"4R,8k,8l,8m,2C").3o(","),u(i,o){6.E[o]=u(f){v f?q.3U(o,f):q.1S(o)}});7(6.W.3h||6.W.3f)17.8n("6o",6.27,12);J 7(6.W.1j){17.8o("<8r"+"8s 2J=62 8u=U "+"3e=//:><\\/2d>");B 2d=17.4X("62");7(2d)2d.37=u(){7(q.3D!="1X")v;q.11.33(q);6.27()};2d=16}J 7(6.W.2N)6.50=3L(u(){7(17.3D=="8y"||17.3D=="1X"){4p(6.50);6.50=16;6.27()}},10);6.G.1M(1w,"2O",6.27)};7(6.W.1j)6(1w).6u("52",u(){B 1k=6.G.1k;P(B C 1x 1k){B 4Z=1k[C],i=4Z.I;7(i&&C!=\'52\')6w 6.G.2f(4Z[i-1],C);22(--i)}});6.E.1z({6A:u(V,21,M){q.2O(V,21,M,1)},2O:u(V,21,M,1W){7(6.1t(V))v q.3U("2O",V);M=M||u(){};B C="5d";7(21)7(6.1t(21)){M=21;21=16}J{21=6.3g(21);C="5V"}B 4e=q;6.3v({V:V,C:C,F:21,1W:1W,1X:u(2P,15){7(15=="2M"||!1W&&15=="5L")4e.1I("2t",2P.3G).4V().K(M,[2P.3G,15,2P]);J M.14(4e,[2P.3G,15,2P])}});v q},6B:u(){v 6.3g(q)},4V:u(){v q.2o("2d").K(u(){7(q.3e)6.59(q.3e);J 6.4a(q.2L||q.6H||q.2t||"")}).4g()}});7(!1w.3p)3p=u(){v 1p 6I("6K.6M")};6.K("5m,5Q,5O,5W,5N,5H".3o(","),u(i,o){6.E[o]=u(f){v q.3U(o,f)}});6.1z({2b:u(V,F,M,C,1W){7(6.1t(F)){M=F;F=16}v 6.3v({V:V,F:F,2M:M,4t:C,1W:1W})},6Q:u(V,F,M,C){v 6.2b(V,F,M,C,1)},59:u(V,M){v 6.2b(V,16,M,"2d")},6S:u(V,F,M){v 6.2b(V,F,M,"6m")},6U:u(V,F,M,C){7(6.1t(F)){M=F;F={}}v 6.3v({C:"5V",V:V,F:F,2M:M,4t:C})},6X:u(29){6.3q.29=29},6Y:u(5c){6.1z(6.3q,5c)},3q:{1k:U,C:"5d",29:0,5r:"70/x-73-3w-77",5h:U,48:U,F:16},3S:{},3v:u(s){s=6.1z({},6.3q,s);7(s.F){7(s.5h&&1C s.F!="23")s.F=6.3g(s.F);7(s.C.4m()=="2b"){s.V+=((s.V.18("?")>-1)?"&":"?")+s.F;s.F=16}}7(s.1k&&!6.4E++)6.G.1S("5m");B 4y=12;B N=1p 3p();N.7j(s.C,s.V,s.48);7(s.F)N.3A("7l-7m",s.5r);7(s.1W)N.3A("7o-4K-7q",6.3S[s.V]||"7s, 7t 7w 7x 4o:4o:4o 7z");N.3A("X-7B-7C","3p");7(N.7E)N.3A("7F","7G");7(s.5G)s.5G(N);7(s.1k)6.G.1S("5H",[N,s]);B 37=u(4s){7(N&&(N.3D==4||4s=="29")){4y=U;7(3I){4p(3I);3I=16}B 15;2G{15=6.5Z(N)&&4s!="29"?s.1W&&6.69(N,s.V)?"5L":"2M":"2C";7(15!="2C"){B 3F;2G{3F=N.4P("6b-4K")}2w(e){}7(s.1W&&3F)6.3S[s.V]=3F;B F=6.6i(N,s.4t);7(s.2M)s.2M(F,15);7(s.1k)6.G.1S("5N",[N,s])}J 6.3J(s,N,15)}2w(e){15="2C";6.3J(s,N,15,e)}7(s.1k)6.G.1S("5O",[N,s]);7(s.1k&&!--6.4E)6.G.1S("5Q");7(s.1X)s.1X(N,15);7(s.48)N=16}};B 3I=3L(37,13);7(s.29>0)57(u(){7(N){N.7N();7(!4y)37("29")}},s.29);2G{N.7Q(s.F)}2w(e){6.3J(s,N,16,e)}7(!s.48)37();v N},3J:u(s,N,15,e){7(s.2C)s.2C(N,15,e);7(s.1k)6.G.1S("5W",[N,s,e])},4E:0,5Z:u(r){2G{v!r.15&&7V.7W=="4G:"||(r.15>=5X&&r.15<7X)||r.15==6d||6.W.2N&&r.15==T}2w(e){}v 12},69:u(N,V){2G{B 6e=N.4P("6b-4K");v N.15==6d||6e==6.3S[V]||6.W.2N&&N.15==T}2w(e){}v 12},6i:u(r,C){B 4Q=r.4P("8c-C");B F=!C&&4Q&&4Q.18("N")>=0;F=C=="N"||F?r.8i:r.3G;7(C=="2d")6.4a(F);7(C=="6m")40("F = "+F);7(C=="4U")6("<1V>").4U(F).4V();v F},3g:u(a){B s=[];7(a.1l==2y||a.3Y)6.K(a,u(){s.1g(2x(q.Y)+"="+2x(q.O))});J P(B j 1x a)7(a[j]&&a[j].1l==2y)6.K(a[j],u(){s.1g(2x(j)+"="+2x(q))});J s.1g(2x(j)+"="+2x(a[j]));v s.6t("&")},4a:u(F){7(1w.54)1w.54(F);J 7(6.W.2N)1w.57(F,0);J 40.3n(1w,F)}});6.E.1z({1L:u(R,M){B 1G=q.1D(":1G");R?1G.26({28:"1L",3V:"1L",1d:"1L"},R,M):1G.K(u(){q.1q.1h=q.2E?q.2E:"";7(6.1m(q,"1h")=="1Z")q.1q.1h="2D"});v q},1K:u(R,M){B 3i=q.1D(":3i");R?3i.26({28:"1K",3V:"1K",1d:"1K"},R,M):3i.K(u(){q.2E=q.2E||6.1m(q,"1h");7(q.2E=="1Z")q.2E="2D";q.1q.1h="1Z"});v q},5g:6.E.3X,3X:u(E,4I){B 1E=1A;v 6.1t(E)&&6.1t(4I)?q.5g(E,4I):q.K(u(){6(q)[6(q).4l(":1G")?"1L":"1K"].14(6(q),1E)})},7a:u(R,M){v q.26({28:"1L"},R,M)},7c:u(R,M){v q.26({28:"1K"},R,M)},7f:u(R,M){v q.K(u(){B 5k=6(q).4l(":1G")?"1L":"1K";6(q).26({28:5k},R,M)})},7r:u(R,M){v q.26({1d:"1L"},R,M)},7u:u(R,M){v q.26({1d:"1K"},R,M)},7y:u(R,43,M){v q.26({1d:43},R,M)},26:u(H,R,1v,M){v q.1F(u(){q.2F=6.1z({},H);B 1u=6.R(R,1v,M);P(B p 1x H){B e=1p 6.3b(q,1u,p);7(H[p].1l==3Q)e.2s(e.Q(),H[p]);J e[H[p]](H)}})},1F:u(C,E){7(!E){E=C;C="3b"}v q.K(u(){7(!q.1F)q.1F={};7(!q.1F[C])q.1F[C]=[];q.1F[C].1g(E);7(q.1F[C].I==1)E.14(q)})}});6.1z({R:u(R,1v,E){B 1u=R&&R.1l==7K?R:{1X:E||!E&&1v||6.1t(R)&&R,25:R,1v:E&&1v||1v&&1v.1l!=4w&&1v};1u.25=(1u.25&&1u.25.1l==3Q?1u.25:{7R:7S,7T:5X}[1u.25])||7U;1u.1N=1u.1X;1u.1X=u(){6.6a(q,"3b");7(6.1t(1u.1N))1u.1N.14(q)};v 1u},1v:{},1F:{},6a:u(D,C){C=C||"3b";7(D.1F&&D.1F[C]){D.1F[C].4L();B f=D.1F[C][0];7(f)f.14(D)}},3b:u(D,1e,H){B z=q;B y=D.1q;B 4D=6.1m(D,"1h");y.5T="1G";z.a=u(){7(1e.49)1e.49.14(D,[z.2p]);7(H=="1d")6.1I(y,"1d",z.2p);J 7(6l(z.2p))y[H]=6l(z.2p)+"4S";y.1h="2D"};z.6v=u(){v 4T(6.1m(D,H))};z.Q=u(){B r=4T(6.30(D,H));v r&&r>-8z?r:z.6v()};z.2s=u(4f,43){z.4J=(1p 5o()).5w();z.2p=4f;z.a();z.4q=3L(u(){z.49(4f,43)},13)};z.1L=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();1e.1L=U;z.2s(0,D.1y[H]);7(H!="1d")y[H]="5a"};z.1K=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();1e.1K=U;z.2s(D.1y[H],0)};z.3X=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();7(4D=="1Z"){1e.1L=U;7(H!="1d")y[H]="5a";z.2s(0,D.1y[H])}J{1e.1K=U;z.2s(D.1y[H],0)}};z.49=u(32,47){B t=(1p 5o()).5w();7(t>1e.25+z.4J){4p(z.4q);z.4q=16;z.2p=47;z.a();7(D.2F)D.2F[H]=U;B 2c=U;P(B i 1x D.2F)7(D.2F[i]!==U)2c=12;7(2c){y.5T="";y.1h=4D;7(6.1m(D,"1h")=="1Z")y.1h="2D";7(1e.1K)y.1h="1Z";7(1e.1K||1e.1L)P(B p 1x D.2F)7(p=="1d")6.1I(y,p,D.1y[p]);J y[p]=""}7(2c&&6.1t(1e.1X))1e.1X.14(D)}J{B n=t-q.4J;B p=n/1e.25;z.2p=1e.1v&&6.1v[1e.1v]?6.1v[1e.1v](p,n,32,(47-32),1e.25):((-6h.7O(p*6h.8L)/2)+0.5)*(47-32)+32;z.a()}}}})}',62,545,'||||||jQuery|if|||||||||||||||||||this||||function|return||||||var|type|elem|fn|data|event|prop|length|else|each|ret|callback|xml|value|for|cur|speed|element|undefined|true|url|browser||name|||parentNode|false||apply|status|null|document|indexOf|className|val|firstChild|obj|opacity|options|nodeName|push|display|result|msie|global|constructor|css|test|handler|new|style|arg|expr|isFunction|opt|easing|window|in|orig|extend|arguments|context|typeof|filter|args|queue|hidden|events|attr|re|hide|show|add|old|target|table|token|replace|trigger|num|elems|div|ifModified|complete|key|none|tbody|params|while|string|nodeType|duration|animate|ready|height|timeout|nth|get|done|script|nextSibling|remove|not|index|tb|fix|merge|oid|z0|preventDefault|find|now|grep|pushStack|custom|innerHTML|first|cssFloat|catch|encodeURIComponent|Array|el|guid|sibling|error|block|oldblock|curAnim|try|stopPropagation|childNodes|id|wrap|text|success|safari|load|res|exec|al|_|last|substr|has|disabled|insertBefore|selected|checked|curCSS|map|firstNum|removeChild|re2|trim|getAttribute|onreadystatechange|handlers|on|originalEvent|fx|readyList|parPos|src|opera|param|mozilla|visible|domManip|clean|cloneNode|tr|call|split|XMLHttpRequest|ajaxSettings|append|child|String|empty|ajax|form|button|inArray|multiFilter|setRequestHeader|foundToken|9_|readyState|tag|modRes|responseText|second|ival|handleError|toUpperCase|setInterval|makeArray|slice|break|oWidth|Number|returnValue|lastModified|styleFloat|bind|width|isReady|toggle|jquery|dir|eval|mouseover|select|to|defaultView|position|oHeight|lastNum|async|step|globalEval|static|pos|swap|self|from|end|float|alpha|radio|inv|is|toLowerCase|visibility|00|clearInterval|timer|rec|isTimeout|dataType|_resort|RegExp|Function|getAll|requestDone|parents|matched|isXMLDoc|appendChild|oldDisplay|active|triggered|file|documentElement|fn2|startTime|Modified|shift|lastToggle|deep|handleHover|getResponseHeader|ct|submit|px|parseFloat|html|evalScripts|getComputedStyle|getElementById|clone|els|safariTimer|currentStyle|unload|force|execScript|getPropertyValue|newProp|setTimeout|zoom|getScript|1px|sl|settings|GET|rl|check|_toggle|processData|prepend|before|state|removeAttr|ajaxStart|lt|Date|gt|eq|contentType|previousSibling|after|parent|contains|getTime|checkbox|password|appendTo|image|reset|input|webkit|href|continue|beforeSend|ajaxSend|ownerDocument|getElementsByTagName|tmp|notmodified|parse|ajaxSuccess|ajaxComplete|_prefix|ajaxStop|even|odd|overflow|delete|POST|ajaxError|200|handle|httpSuccess|nodeValue|unshift|__ie_init|srcElement|body|pageX|tagName|clientX|scrollLeft|httpNotModified|dequeue|Last|scrollTop|304|xmlRes|unbind|100|Math|httpData|click|mouseout|parseInt|json|createElement|DOMContentLoaded|prevObject|ol|setArray|exclude|join|one|max|do|relative|clientHeight|clientWidth|loadIfModified|serialize|toString|thead|tfoot|td|th|textContent|ActiveXObject|htmlFor|Microsoft|class|XMLHTTP|readOnly|gi|match|getIfModified|9999|getJSON|getAttributeNode|post|setAttribute|ig|ajaxTimeout|ajaxSetup|concat|application|userAgent|compatible|www|compatMode|CSS1Compat|next|urlencoded|siblings|children|slideDown|prependTo|slideUp|Top|insertAfter|slideToggle|removeAttribute|addClass|removeClass|open|toggleClass|Content|Type|lastChild|If|only|Since|fadeIn|Thu|01|fadeOut|enabled|Jan|1970|fadeTo|GMT|textarea|Requested|With|prev|overrideMimeType|Connection|close|boxModel|right|object|Object|navigator|substring|abort|cos|font|send|slow|600|fast|400|location|protocol|300|pageY|clientY|method|action|cancelBubble|hover|fromElement|toElement|relatedTarget|removeEventListener|blur|readonly|focus|resize|content|scroll|dblclick|mousedown|mouseup|mousemove|responseXML|change|keydown|keypress|keyup|addEventListener|write|prototype|size|scr|ipt|createTextNode|defer|FORM|reverse|noConflict|loaded|10000|weight|line|Bottom|Right|Left|padding|border|Width|offsetHeight|offsetWidth|absolute|PI|left'.split('|'),0,{}))
|
skin/frontend/default/freepop/smartmenu/js/superfish.js
ADDED
@@ -0,0 +1,121 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
/*
|
3 |
+
* Superfish v1.4.8 - jQuery menu widget
|
4 |
+
* Copyright (c) 2008 Joel Birch
|
5 |
+
*
|
6 |
+
* Dual licensed under the MIT and GPL licenses:
|
7 |
+
* http://www.opensource.org/licenses/mit-license.php
|
8 |
+
* http://www.gnu.org/licenses/gpl.html
|
9 |
+
*
|
10 |
+
* CHANGELOG: http://users.tpg.com.au/j_birch/plugins/superfish/changelog.txt
|
11 |
+
*/
|
12 |
+
|
13 |
+
;(function($){
|
14 |
+
$.fn.superfish = function(op){
|
15 |
+
|
16 |
+
var sf = $.fn.superfish,
|
17 |
+
c = sf.c,
|
18 |
+
$arrow = $(['<span class="',c.arrowClass,'"> »</span>'].join('')),
|
19 |
+
over = function(){
|
20 |
+
var $$ = $(this), menu = getMenu($$);
|
21 |
+
clearTimeout(menu.sfTimer);
|
22 |
+
$$.showSuperfishUl().siblings().hideSuperfishUl();
|
23 |
+
},
|
24 |
+
out = function(){
|
25 |
+
var $$ = $(this), menu = getMenu($$), o = sf.op;
|
26 |
+
clearTimeout(menu.sfTimer);
|
27 |
+
menu.sfTimer=setTimeout(function(){
|
28 |
+
o.retainPath=($.inArray($$[0],o.$path)>-1);
|
29 |
+
$$.hideSuperfishUl();
|
30 |
+
if (o.$path.length && $$.parents(['li.',o.hoverClass].join('')).length<1){over.call(o.$path);}
|
31 |
+
},o.delay);
|
32 |
+
},
|
33 |
+
getMenu = function($menu){
|
34 |
+
var menu = $menu.parents(['ul.',c.menuClass,':first'].join(''))[0];
|
35 |
+
sf.op = sf.o[menu.serial];
|
36 |
+
return menu;
|
37 |
+
},
|
38 |
+
addArrow = function($a){ $a.addClass(c.anchorClass).append($arrow.clone()); };
|
39 |
+
|
40 |
+
return this.each(function() {
|
41 |
+
var s = this.serial = sf.o.length;
|
42 |
+
var o = $.extend({},sf.defaults,op);
|
43 |
+
o.$path = $('li.'+o.pathClass,this).slice(0,o.pathLevels).each(function(){
|
44 |
+
$(this).addClass([o.hoverClass,c.bcClass].join(' '))
|
45 |
+
.filter('li:has(ul)').removeClass(o.pathClass);
|
46 |
+
});
|
47 |
+
sf.o[s] = sf.op = o;
|
48 |
+
|
49 |
+
$('li:has(ul)',this)[($.fn.hoverIntent && !o.disableHI) ? 'hoverIntent' : 'hover'](over,out).each(function() {
|
50 |
+
if (o.autoArrows) addArrow( $('>a:first-child',this) );
|
51 |
+
})
|
52 |
+
.not('.'+c.bcClass)
|
53 |
+
.hideSuperfishUl();
|
54 |
+
|
55 |
+
var $a = $('a',this);
|
56 |
+
$a.each(function(i){
|
57 |
+
var $li = $a.eq(i).parents('li');
|
58 |
+
$a.eq(i).focus(function(){over.call($li);}).blur(function(){out.call($li);});
|
59 |
+
});
|
60 |
+
o.onInit.call(this);
|
61 |
+
|
62 |
+
}).each(function() {
|
63 |
+
var menuClasses = [c.menuClass];
|
64 |
+
if (sf.op.dropShadows && !($.browser.msie && $.browser.version < 7)) menuClasses.push(c.shadowClass);
|
65 |
+
$(this).addClass(menuClasses.join(' '));
|
66 |
+
});
|
67 |
+
};
|
68 |
+
|
69 |
+
var sf = $.fn.superfish;
|
70 |
+
sf.o = [];
|
71 |
+
sf.op = {};
|
72 |
+
sf.IE7fix = function(){
|
73 |
+
var o = sf.op;
|
74 |
+
if ($.browser.msie && $.browser.version > 6 && o.dropShadows && o.animation.opacity!=undefined)
|
75 |
+
this.toggleClass(sf.c.shadowClass+'-off');
|
76 |
+
};
|
77 |
+
sf.c = {
|
78 |
+
bcClass : 'sf-breadcrumb',
|
79 |
+
menuClass : 'sf-js-enabled',
|
80 |
+
anchorClass : 'sf-with-ul',
|
81 |
+
arrowClass : 'sf-sub-indicator',
|
82 |
+
shadowClass : 'sf-shadow'
|
83 |
+
};
|
84 |
+
sf.defaults = {
|
85 |
+
hoverClass : 'sfHover',
|
86 |
+
pathClass : 'overideThisToUse',
|
87 |
+
pathLevels : 1,
|
88 |
+
delay : 800,
|
89 |
+
animation : {opacity:'show'},
|
90 |
+
speed : 'normal',
|
91 |
+
autoArrows : true,
|
92 |
+
dropShadows : true,
|
93 |
+
disableHI : false, // true disables hoverIntent detection
|
94 |
+
onInit : function(){}, // callback functions
|
95 |
+
onBeforeShow: function(){},
|
96 |
+
onShow : function(){},
|
97 |
+
onHide : function(){}
|
98 |
+
};
|
99 |
+
$.fn.extend({
|
100 |
+
hideSuperfishUl : function(){
|
101 |
+
var o = sf.op,
|
102 |
+
not = (o.retainPath===true) ? o.$path : '';
|
103 |
+
o.retainPath = false;
|
104 |
+
var $ul = $(['li.',o.hoverClass].join(''),this).add(this).not(not).removeClass(o.hoverClass)
|
105 |
+
.find('>ul').hide().css('visibility','hidden');
|
106 |
+
o.onHide.call($ul);
|
107 |
+
return this;
|
108 |
+
},
|
109 |
+
showSuperfishUl : function(){
|
110 |
+
var o = sf.op,
|
111 |
+
sh = sf.c.shadowClass+'-off',
|
112 |
+
$ul = this.addClass(o.hoverClass)
|
113 |
+
.find('>ul:hidden').css('visibility','visible');
|
114 |
+
sf.IE7fix.call($ul);
|
115 |
+
o.onBeforeShow.call($ul);
|
116 |
+
$ul.animate(o.animation,o.speed,function(){ sf.IE7fix.call($ul); o.onShow.call($ul); });
|
117 |
+
return this;
|
118 |
+
}
|
119 |
+
});
|
120 |
+
|
121 |
+
})(jQuery);
|
skin/frontend/default/freepop/smartmenu/js/supersubs.js
ADDED
@@ -0,0 +1,90 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
|
2 |
+
/*
|
3 |
+
* Supersubs v0.2b - jQuery plugin
|
4 |
+
* Copyright (c) 2008 Joel Birch
|
5 |
+
*
|
6 |
+
* Dual licensed under the MIT and GPL licenses:
|
7 |
+
* http://www.opensource.org/licenses/mit-license.php
|
8 |
+
* http://www.gnu.org/licenses/gpl.html
|
9 |
+
*
|
10 |
+
*
|
11 |
+
* This plugin automatically adjusts submenu widths of suckerfish-style menus to that of
|
12 |
+
* their longest list item children. If you use this, please expect bugs and report them
|
13 |
+
* to the jQuery Google Group with the word 'Superfish' in the subject line.
|
14 |
+
*
|
15 |
+
*/
|
16 |
+
|
17 |
+
;(function($){ // $ will refer to jQuery within this closure
|
18 |
+
|
19 |
+
$.fn.supersubs = function(options){
|
20 |
+
var opts = $.extend({}, $.fn.supersubs.defaults, options);
|
21 |
+
// return original object to support chaining
|
22 |
+
return this.each(function() {
|
23 |
+
// cache selections
|
24 |
+
var $$ = $(this);
|
25 |
+
// support metadata
|
26 |
+
var o = $.meta ? $.extend({}, opts, $$.data()) : opts;
|
27 |
+
// get the font size of menu.
|
28 |
+
// .css('fontSize') returns various results cross-browser, so measure an em dash instead
|
29 |
+
var fontsize = $('<li id="menu-fontsize">—</li>').css({
|
30 |
+
'padding' : 0,
|
31 |
+
'position' : 'absolute',
|
32 |
+
'top' : '-999em',
|
33 |
+
'width' : 'auto'
|
34 |
+
}).appendTo($$).width(); //clientWidth is faster, but was incorrect here
|
35 |
+
// remove em dash
|
36 |
+
$('#menu-fontsize').remove();
|
37 |
+
// cache all ul elements
|
38 |
+
$ULs = $$.find('ul');
|
39 |
+
// loop through each ul in menu
|
40 |
+
$ULs.each(function(i) {
|
41 |
+
// cache this ul
|
42 |
+
var $ul = $ULs.eq(i);
|
43 |
+
// get all (li) children of this ul
|
44 |
+
var $LIs = $ul.children();
|
45 |
+
// get all anchor grand-children
|
46 |
+
var $As = $LIs.children('a');
|
47 |
+
// force content to one line and save current float property
|
48 |
+
var liFloat = $LIs.css('white-space','nowrap').css('float');
|
49 |
+
// remove width restrictions and floats so elements remain vertically stacked
|
50 |
+
var emWidth = $ul.add($LIs).add($As).css({
|
51 |
+
'float' : 'none',
|
52 |
+
'width' : 'auto'
|
53 |
+
})
|
54 |
+
// this ul will now be shrink-wrapped to longest li due to position:absolute
|
55 |
+
// so save its width as ems. Clientwidth is 2 times faster than .width() - thanks Dan Switzer
|
56 |
+
.end().end()[0].clientWidth / fontsize;
|
57 |
+
// add more width to ensure lines don't turn over at certain sizes in various browsers
|
58 |
+
emWidth += o.extraWidth;
|
59 |
+
// restrict to at least minWidth and at most maxWidth
|
60 |
+
if (emWidth > o.maxWidth) { emWidth = o.maxWidth; }
|
61 |
+
else if (emWidth < o.minWidth) { emWidth = o.minWidth; }
|
62 |
+
emWidth += 'em';
|
63 |
+
// set ul to width in ems
|
64 |
+
$ul.css('width',emWidth);
|
65 |
+
// restore li floats to avoid IE bugs
|
66 |
+
// set li width to full width of this ul
|
67 |
+
// revert white-space to normal
|
68 |
+
$LIs.css({
|
69 |
+
'float' : liFloat,
|
70 |
+
'width' : '100%',
|
71 |
+
'white-space' : 'normal'
|
72 |
+
})
|
73 |
+
// update offset position of descendant ul to reflect new width of parent
|
74 |
+
.each(function(){
|
75 |
+
var $childUl = $('>ul',this);
|
76 |
+
var offsetDirection = $childUl.css('left')!==undefined ? 'left' : 'right';
|
77 |
+
$childUl.css(offsetDirection,emWidth);
|
78 |
+
});
|
79 |
+
});
|
80 |
+
|
81 |
+
});
|
82 |
+
};
|
83 |
+
// expose defaults
|
84 |
+
$.fn.supersubs.defaults = {
|
85 |
+
minWidth : 9, // requires em unit.
|
86 |
+
maxWidth : 25, // requires em unit.
|
87 |
+
extraWidth : 0 // extra width can ensure lines don't sometimes turn over due to slight browser differences in how they round-off values
|
88 |
+
};
|
89 |
+
|
90 |
+
})(jQuery); // plugin code ends
|