ShoesStore - Version 2.0.0

Version Notes

Our Shoes Store is perfectly suitable for those who are planning to launch online shoe store for ladies/kids/men. The template delivers a stylish look and feel with a clean and simplistic design.

Features



  • Full Responsive which adapting display to all devices

  • Theme created using Html5 & CSS3 features and google webfonts

  • Template files were re-coded using grid Bootstrap principles

  • Product Zoom with Backend Settings

  • Back to top button

  • Product Next & Previous View

  • Compatibility: 1.7.0.0, 1.7.0.1, 1.7.0.2


Live Demo: http://demo.bsetec.com/?bm_default


To download PSD, please go to this link http://www.bsetec.com/free-magento-templates

Download this release

Release Info

Developer BseTec
Extension ShoesStore
Version 2.0.0
Comparing to
See all releases


Version 2.0.0

Files changed (160) hide show
  1. app/code/community/Magic/Catalog/Block/Product/View/Media.php +68 -0
  2. app/code/community/Magic/Catalog/Helper/Data.php +6 -0
  3. app/code/community/Magic/Catalog/Model/Gallery/CloudZoom/Position.php +34 -0
  4. app/code/community/Magic/Catalog/etc/config.xml +89 -0
  5. app/code/community/Magic/Catalog/etc/system.xml +117 -0
  6. app/code/community/TM/EasyTabs/Helper/Data.php +6 -0
  7. app/code/community/TM/EasyTabs/etc/adminhtml.xml +23 -0
  8. app/code/community/TM/EasyTabs/etc/config.xml +91 -0
  9. app/code/community/TM/EasyTabs/etc/system.xml +376 -0
  10. app/code/community/VS/Bestseller/Block/About.php +32 -0
  11. app/code/community/VS/Bestseller/Block/Bestseller.php +20 -0
  12. app/code/community/VS/Bestseller/Helper/Data.php +11 -0
  13. app/code/community/VS/Bestseller/etc/config.xml +81 -0
  14. app/code/community/VS/Bestseller/etc/system.xml +82 -0
  15. app/design/frontend/default/default/layout/magic_cloudzoom.xml +39 -0
  16. app/design/frontend/default/default/template/magic/catalog/product/view/media.phtml +75 -0
  17. app/design/frontend/default/shoe_store/layout/ajax.xml +77 -0
  18. app/design/frontend/default/shoe_store/layout/bestseller.xml +22 -0
  19. app/design/frontend/default/shoe_store/layout/catalog.xml +418 -0
  20. app/design/frontend/default/shoe_store/layout/catalog.xml~ +418 -0
  21. app/design/frontend/default/shoe_store/layout/catalogsearch.xml +142 -0
  22. app/design/frontend/default/shoe_store/layout/checkout.xml +436 -0
  23. app/design/frontend/default/shoe_store/layout/cms.xml +89 -0
  24. app/design/frontend/default/shoe_store/layout/customer.xml +293 -0
  25. app/design/frontend/default/shoe_store/layout/custommenu.xml +12 -0
  26. app/design/frontend/default/shoe_store/layout/easytabs.xml +41 -0
  27. app/design/frontend/default/shoe_store/layout/magic_cloudzoom.xml +39 -0
  28. app/design/frontend/default/shoe_store/layout/newsletter.xml +69 -0
  29. app/design/frontend/default/shoe_store/layout/page.xml +203 -0
  30. app/design/frontend/default/shoe_store/layout/tag.xml +134 -0
  31. app/design/frontend/default/shoe_store/template/ajax/catalog/product/options.phtml +169 -0
  32. app/design/frontend/default/shoe_store/template/ajax/catalog/product/view.phtml +146 -0
  33. app/design/frontend/default/shoe_store/template/ajax/catalog/product/view/addtocart.phtml +46 -0
  34. app/design/frontend/default/shoe_store/template/ajax/catalog/product/view/list.phtml +164 -0
  35. app/design/frontend/default/shoe_store/template/ajax/checkout/cart/sidebar/default.phtml +137 -0
  36. app/design/frontend/default/shoe_store/template/ajax/checkout/cart/sidebar/default1.5.phtml +153 -0
  37. app/design/frontend/default/shoe_store/template/bestseller/bestseller.phtml +59 -0
  38. app/design/frontend/default/shoe_store/template/bestseller/bestseller1.phtml +59 -0
  39. app/design/frontend/default/shoe_store/template/bestseller/block_bestseller.phtml +34 -0
  40. app/design/frontend/default/shoe_store/template/catalog/navigation/top.phtml +49 -0
  41. app/design/frontend/default/shoe_store/template/catalog/product/compare/sidebar.phtml +61 -0
  42. app/design/frontend/default/shoe_store/template/catalog/product/list.phtml +137 -0
  43. app/design/frontend/default/shoe_store/template/catalog/product/list/toolbar.phtml +102 -0
  44. app/design/frontend/default/shoe_store/template/catalog/product/list/toolbar.phtml~ +96 -0
  45. app/design/frontend/default/shoe_store/template/catalog/product/new.phtml +96 -0
  46. app/design/frontend/default/shoe_store/template/catalog/product/new_products.phtml +170 -0
  47. app/design/frontend/default/shoe_store/template/catalog/product/view.phtml +194 -0
  48. app/design/frontend/default/shoe_store/template/catalog/product/view/addtocart.phtml +70 -0
  49. app/design/frontend/default/shoe_store/template/catalog/product/view2.phtml +361 -0
  50. app/design/frontend/default/shoe_store/template/catalogsearch/form.mini.phtml +43 -0
  51. app/design/frontend/default/shoe_store/template/checkout/cart.phtml +165 -0
  52. app/design/frontend/default/shoe_store/template/checkout/cart.phtml~ +163 -0
  53. app/design/frontend/default/shoe_store/template/checkout/cart/item/default.phtml +278 -0
  54. app/design/frontend/default/shoe_store/template/checkout/multishipping/addresses.phtml +83 -0
  55. app/design/frontend/default/shoe_store/template/checkout/multishipping/addresses.phtml~ +81 -0
  56. app/design/frontend/default/shoe_store/template/checkout/multishipping/billing.phtml +116 -0
  57. app/design/frontend/default/shoe_store/template/checkout/multishipping/billing.phtml~ +116 -0
  58. app/design/frontend/default/shoe_store/template/checkout/multishipping/shipping.phtml +130 -0
  59. app/design/frontend/default/shoe_store/template/checkout/multishipping/shipping.phtml~ +130 -0
  60. app/design/frontend/default/shoe_store/template/customer/account/dashboard.phtml +45 -0
  61. app/design/frontend/default/shoe_store/template/customer/account/dashboard/address.phtml +50 -0
  62. app/design/frontend/default/shoe_store/template/customer/account/dashboard/hello.phtml +30 -0
  63. app/design/frontend/default/shoe_store/template/customer/account/dashboard/info.phtml +64 -0
  64. app/design/frontend/default/shoe_store/template/customer/account/dashboard/info.phtml~ +64 -0
  65. app/design/frontend/default/shoe_store/template/customer/account/dashboard/newsletter.phtml +31 -0
  66. app/design/frontend/default/shoe_store/template/customer/account/link/back.phtml +29 -0
  67. app/design/frontend/default/shoe_store/template/customer/account/navigation.phtml +46 -0
  68. app/design/frontend/default/shoe_store/template/customer/address.phtml +94 -0
  69. app/design/frontend/default/shoe_store/template/customer/balance.phtml +31 -0
  70. app/design/frontend/default/shoe_store/template/customer/form/address.phtml +143 -0
  71. app/design/frontend/default/shoe_store/template/customer/form/changepassword.phtml +67 -0
  72. app/design/frontend/default/shoe_store/template/customer/form/confirmation.phtml +54 -0
  73. app/design/frontend/default/shoe_store/template/customer/form/edit.phtml +114 -0
  74. app/design/frontend/default/shoe_store/template/customer/form/forgotpassword.phtml +55 -0
  75. app/design/frontend/default/shoe_store/template/customer/form/login.phtml +91 -0
  76. app/design/frontend/default/shoe_store/template/customer/form/mini.login.phtml +40 -0
  77. app/design/frontend/default/shoe_store/template/customer/form/newsletter.phtml +53 -0
  78. app/design/frontend/default/shoe_store/template/customer/form/register.phtml +190 -0
  79. app/design/frontend/default/shoe_store/template/customer/form/resetforgottenpassword.phtml +59 -0
  80. app/design/frontend/default/shoe_store/template/customer/logout.phtml +35 -0
  81. app/design/frontend/default/shoe_store/template/customer/orders.phtml +67 -0
  82. app/design/frontend/default/shoe_store/template/customer/orders.phtml~ +65 -0
  83. app/design/frontend/default/shoe_store/template/customer/wishlist.phtml +73 -0
  84. app/design/frontend/default/shoe_store/template/custommenu/top.phtml +18 -0
  85. app/design/frontend/default/shoe_store/template/easytabs/additional.phtml +29 -0
  86. app/design/frontend/default/shoe_store/template/easytabs/attributes.phtml +53 -0
  87. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms.phtml +6 -0
  88. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms1.phtml +6 -0
  89. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms2.phtml +6 -0
  90. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms3.phtml +6 -0
  91. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms4.phtml +6 -0
  92. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom.phtml +16 -0
  93. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom1.phtml +16 -0
  94. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom2.phtml +16 -0
  95. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom3.phtml +16 -0
  96. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom4.phtml +16 -0
  97. app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustomcms.phtml +5 -0
  98. app/design/frontend/default/shoe_store/template/easytabs/catalogproductrelated.phtml +90 -0
  99. app/design/frontend/default/shoe_store/template/easytabs/catalogproductreview.phtml +65 -0
  100. app/design/frontend/default/shoe_store/template/easytabs/catalogproducttags.phtml +58 -0
  101. app/design/frontend/default/shoe_store/template/easytabs/catalogproductview.phtml +119 -0
  102. app/design/frontend/default/shoe_store/template/easytabs/description.phtml +38 -0
  103. app/design/frontend/default/shoe_store/template/easytabs/tabs.phtml +96 -0
  104. app/design/frontend/default/shoe_store/template/magic/catalog/product/view/media.phtml +75 -0
  105. app/design/frontend/default/shoe_store/template/newsletter/subscribe.phtml +52 -0
  106. app/design/frontend/default/shoe_store/template/page/1column.phtml +58 -0
  107. app/design/frontend/default/shoe_store/template/page/2columns-left.phtml +59 -0
  108. app/design/frontend/default/shoe_store/template/page/2columns-right.phtml +61 -0
  109. app/design/frontend/default/shoe_store/template/page/3columns.phtml +62 -0
  110. app/design/frontend/default/shoe_store/template/page/html/breadcrumbs.phtml +47 -0
  111. app/design/frontend/default/shoe_store/template/page/html/footer.phtml +59 -0
  112. app/design/frontend/default/shoe_store/template/page/html/footer.phtml~ +58 -0
  113. app/design/frontend/default/shoe_store/template/page/html/head.phtml +300 -0
  114. app/design/frontend/default/shoe_store/template/page/html/head.phtml~ +302 -0
  115. app/design/frontend/default/shoe_store/template/page/html/header.phtml +95 -0
  116. app/design/frontend/default/shoe_store/template/page/html/pager.phtml +124 -0
  117. app/design/frontend/default/shoe_store/template/page/html/top.links.phtml +39 -0
  118. app/design/frontend/default/shoe_store/template/page/html/topmenu.phtml +108 -0
  119. app/design/frontend/default/shoe_store/template/page/switch/languages.phtml +50 -0
  120. app/design/frontend/default/shoe_store/template/page/switch/languages.phtml~ +50 -0
  121. app/design/frontend/default/shoe_store/template/page/template/links.phtml +43 -0
  122. app/design/frontend/default/shoe_store/template/page/template/linksblock.phtml +32 -0
  123. app/design/frontend/default/shoe_store/template/persistent/checkout/onepage/billing.phtml +226 -0
  124. app/design/frontend/default/shoe_store/template/persistent/checkout/onepage/login.phtml +157 -0
  125. app/design/frontend/default/shoe_store/template/persistent/customer/form/login.phtml +82 -0
  126. app/design/frontend/default/shoe_store/template/sales/order/history.phtml +78 -0
  127. app/design/frontend/default/shoe_store/template/sales/order/history.phtml~ +76 -0
  128. app/design/frontend/default/shoe_store/template/sales/order/info.phtml +101 -0
  129. app/design/frontend/default/shoe_store/template/sales/order/info.phtml~ +101 -0
  130. app/design/frontend/default/shoe_store/template/sales/order/recent.phtml +77 -0
  131. app/design/frontend/default/shoe_store/template/sales/order/recent.phtml~ +75 -0
  132. app/design/frontend/default/shoe_store/template/tag/popular.phtml +42 -0
  133. app/design/frontend/default/shoe_store/template/wishlist/item/column/info.phtml +40 -0
  134. app/etc/modules/Magic_Catalog.xml +9 -0
  135. app/etc/modules/TM_EasyTabs.xml +13 -0
  136. app/etc/modules/VS_Bestseller.xml +9 -0
  137. js/bootstrap/application.js +154 -0
  138. js/bootstrap/bootstrap-affix.js +104 -0
  139. js/bootstrap/bootstrap-alert.js +90 -0
  140. js/bootstrap/bootstrap-button.js +96 -0
  141. js/bootstrap/bootstrap-carousel.js +176 -0
  142. js/bootstrap/bootstrap-collapse.js +158 -0
  143. js/bootstrap/bootstrap-dropdown.js +150 -0
  144. js/bootstrap/bootstrap-modal.js +239 -0
  145. js/bootstrap/bootstrap-popover.js +103 -0
  146. js/bootstrap/bootstrap-scrollspy.js +151 -0
  147. js/bootstrap/bootstrap-tab.js +135 -0
  148. js/bootstrap/bootstrap-tooltip.js +275 -0
  149. js/bootstrap/bootstrap-transition.js +60 -0
  150. js/bootstrap/bootstrap-typeahead.js +300 -0
  151. js/bootstrap/bootstrap.js +2027 -0
  152. js/bootstrap/bootstrap.min.js +6 -0
  153. js/bootstrap/cloud-zoom.1.0.2.min.js +17 -0
  154. js/bootstrap/easyTooltip.js +67 -0
  155. js/bootstrap/jquery-1.7.2.min.js +4 -0
  156. js/bootstrap/jquery-1.8.2.min.js +2 -0
  157. js/bootstrap/jquery-noconflict.js +1 -0
  158. js/bootstrap/jquery.accordion.js +90 -0
  159. js/bootstrap/jquery.jcarousel.min.js +16 -0
  160. js/bootstrap/jquery.js +4 -0
app/code/community/Magic/Catalog/Block/Product/View/Media.php ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Magic_Catalog_Block_Product_View_Media extends Mage_Catalog_Block_Product_View_Media
3
+ {
4
+
5
+ public function renderCloudOptions()
6
+ {
7
+ $output = "";
8
+ $width = $this->getCloudConfig('zoomImage/zoomWidth');
9
+ if (empty($width) || !is_numeric($width)) {
10
+ $width = 'auto';
11
+ }
12
+ $height = $this->getCloudConfig('zoomImage/zoomHeight');
13
+ if (empty($height) || !is_numeric($height)) {
14
+ $height = 'auto';
15
+ }
16
+ $output .= "zoomWidth: '" . $width . "',";
17
+ $output .= "zoomHeight: '" . $height . "',";
18
+ $output .= "position: '" . $this->getCloudConfig('zoomImage/position') . "',";
19
+ $output .= "smoothMove: " . (int) $this->getCloudConfig('zoomImage/smoothMove') . ",";
20
+ $output .= "showTitle: " . ($this->getCloudConfig('zoomImage/showTitle') ? 'true' : 'false') . ",";
21
+ $output .= "titleOpacity: " . (float) ($this->getCloudConfig('zoomImage/titleOpacity')/100) . ",";
22
+
23
+ $adjustX = (int) $this->getCloudConfig('zoomImage/adjustX');
24
+ $adjustY = (int) $this->getCloudConfig('zoomImage/adjustY');
25
+ if ($adjustX > 0) {
26
+ $output .= "adjustX: " . $adjustX . ",";
27
+ }
28
+ if ($adjustY > 0) {
29
+ $output .= "adjustY: " . $adjustY . ",";
30
+ }
31
+
32
+ $output .= "lensOpacity: " . (float) ($this->getCloudConfig('lens/lensOpacity')/100) . ",";
33
+
34
+ $tint = $this->getCloudConfig('originalImage/tint');
35
+ if (!empty($tint)) {
36
+ $output .= "tint: '" . $this->getCloudConfig('originalImage/tint') . "',";
37
+ }
38
+ $output .= "tintOpacity: " . (float) ($this->getCloudConfig('originalImage/tintOpacity')/100) . ",";
39
+ $output .= "softFocus: " . ($this->getCloudConfig('originalImage/softFocus') ? 'true' : 'false') . "";
40
+
41
+ return $output;
42
+ }
43
+
44
+ public function getCloudConfig($name)
45
+ {
46
+ return Mage::getStoreConfig('magic_cloudzoom/' . $name);
47
+ }
48
+
49
+ public function getCloudImage($product, $imageFile=null)
50
+ {
51
+ if ($imageFile !== null) {
52
+ $imageFile = $imageFile->getFile();
53
+ }
54
+ $image = $this->helper('catalog/image')->init($product, 'image', $imageFile);
55
+
56
+ $width = $this->getCloudConfig('originalImage/imageWidth');
57
+ $height = $this->getCloudConfig('originalImage/imageHeight');
58
+
59
+ if (!empty($width) && !empty($height)) {
60
+ return $image->resize($width, $height);
61
+ } else if (!empty($width)) {
62
+ return $image->resize($width);
63
+ } else if (!empty($height)) {
64
+ return $image->resize($height);
65
+ }
66
+ return $image;
67
+ }
68
+ }
app/code/community/Magic/Catalog/Helper/Data.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Magic_Catalog_Helper_Data extends Mage_Core_Helper_Abstract
4
+ {
5
+
6
+ }
app/code/community/Magic/Catalog/Model/Gallery/CloudZoom/Position.php ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Magic_Catalog_Model_Gallery_CloudZoom_Position
3
+ {
4
+
5
+ public function toOptionArray()
6
+ {
7
+ return array(
8
+ array(
9
+ 'value' => 'left',
10
+ 'label' => 'Left Side'
11
+ ),
12
+ array(
13
+ 'value' => 'right',
14
+ 'label' => 'Right Side'
15
+ ),
16
+ array(
17
+ 'value' => 'right',
18
+ 'label' => 'Right Side'
19
+ ),
20
+ array(
21
+ 'value' => 'top',
22
+ 'label' => 'Top Side'
23
+ ),
24
+ array(
25
+ 'value' => 'bottom',
26
+ 'label' => 'Bottom Side'
27
+ ),
28
+ array(
29
+ 'value' => 'inside',
30
+ 'label' => 'Inside Original Image'
31
+ )
32
+ );
33
+ }
34
+ }
app/code/community/Magic/Catalog/etc/config.xml ADDED
@@ -0,0 +1,89 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <Magic_Catalog>
5
+ <version>7.0.0</version>
6
+ </Magic_Catalog>
7
+ </modules>
8
+ <global>
9
+ <blocks>
10
+ <catalog>
11
+ <rewrite>
12
+ <product_view_media>Magic_Catalog_Block_Product_View_Media</product_view_media>
13
+ </rewrite>
14
+ </catalog>
15
+ <magic>
16
+ <class>Magic_Catalog_Block</class>
17
+ </magic>
18
+ </blocks>
19
+ <models>
20
+ <magic>
21
+ <class>Magic_Catalog_Model</class>
22
+ </magic>
23
+ </models>
24
+ <helpers>
25
+ <magic_catalog>
26
+ <class>Magic_Catalog_Helper</class>
27
+ </magic_catalog>
28
+ </helpers>
29
+ </global>
30
+ <frontend>
31
+ <layout>
32
+ <updates>
33
+ <magic_cloudzoom>
34
+ <file>magic_cloudzoom.xml</file>
35
+ </magic_cloudzoom>
36
+ </updates>
37
+ </layout>
38
+ </frontend>
39
+ <adminhtml>
40
+ <acl>
41
+ <resources>
42
+ <admin>
43
+ <children>
44
+ <system>
45
+ <children>
46
+ <config>
47
+ <children>
48
+ <magic_cloudzoom translate="title" module="magic_catalog">
49
+ <title>Mdl Product Zoom"</title>
50
+ <sort_order>50</sort_order>
51
+ </magic_cloudzoom>
52
+ </children>
53
+ </config>
54
+ </children>
55
+ </system>
56
+ </children>
57
+ </admin>
58
+ </resources>
59
+ </acl>
60
+ </adminhtml>
61
+
62
+ <default>
63
+ <magic_cloudzoom>
64
+ <general>
65
+ <enabled>1</enabled>
66
+ </general>
67
+ <zoomImage>
68
+ <zoomWidth>400</zoomWidth>
69
+ <zoomHeight>400</zoomHeight>
70
+ <position>right</position>
71
+ <smoothMove>3</smoothMove>
72
+ <showTitle>1</showTitle>
73
+ <titleOpacity>1</titleOpacity>
74
+ <adjustX>0</adjustX>
75
+ <adjustY>0</adjustY>
76
+ </zoomImage>
77
+ <lens>
78
+ <lensOpacity>7.0</lensOpacity>
79
+ </lens>
80
+ <originalImage>
81
+ <imageWidth>400</imageWidth>
82
+ <imageHeight>400</imageHeight>
83
+ <tint></tint>
84
+ <tintOpacity>5.5</tintOpacity>
85
+ <softFocus>0</softFocus>
86
+ </originalImage>
87
+ </magic_cloudzoom>
88
+ </default>
89
+ </config>
app/code/community/Magic/Catalog/etc/system.xml ADDED
@@ -0,0 +1,117 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <sections>
4
+ <magic_cloudzoom translate="label" module="magic_catalog">
5
+ <label>Mdl Product Zoom</label>
6
+ <tab>catalog</tab>
7
+ <frontend_type>text</frontend_type>
8
+ <sort_order>10</sort_order>
9
+ <show_in_default>1</show_in_default>
10
+ <show_in_website>1</show_in_website>
11
+ <show_in_store>1</show_in_store>
12
+ <groups>
13
+ <general translate="label">
14
+ <label>General</label>
15
+ <frontend_type>text</frontend_type>
16
+ <sort_order>10</sort_order>
17
+ <show_in_default>1</show_in_default>
18
+ <show_in_website>1</show_in_website>
19
+ <show_in_store>1</show_in_store>
20
+ <fields>
21
+ <enabled translate="label">
22
+ <label>Enable Product Zoom</label>
23
+ <frontend_type>select</frontend_type>
24
+ <source_model>adminhtml/system_config_source_yesno</source_model>
25
+ <sort_order>1</sort_order>
26
+ <show_in_default>1</show_in_default>
27
+ <show_in_website>1</show_in_website>
28
+ <show_in_store>1</show_in_store>
29
+ </enabled>
30
+ </fields>
31
+ </general>
32
+ <originalImage translate="label">
33
+ <label>Product Image</label>
34
+ <frontend_type>text</frontend_type>
35
+ <sort_order>13</sort_order>
36
+ <show_in_default>1</show_in_default>
37
+ <show_in_website>1</show_in_website>
38
+ <show_in_store>1</show_in_store>
39
+ <fields>
40
+ <imageWidth translate="label">
41
+ <label>Width</label>
42
+ <frontend_type>text</frontend_type>
43
+ <sort_order>1</sort_order>
44
+ <show_in_default>1</show_in_default>
45
+ <show_in_website>1</show_in_website>
46
+ <show_in_store>1</show_in_store>
47
+ </imageWidth>
48
+ <imageHeight translate="label">
49
+ <label>Height</label>
50
+ <frontend_type>text</frontend_type>
51
+ <sort_order>2</sort_order>
52
+ <show_in_default>1</show_in_default>
53
+ <show_in_website>1</show_in_website>
54
+ <show_in_store>1</show_in_store>
55
+ </imageHeight>
56
+ </fields>
57
+ </originalImage>
58
+ <zoomImage translate="label">
59
+ <label>Zoom Image</label>
60
+ <frontend_type>text</frontend_type>
61
+ <sort_order>11</sort_order>
62
+ <show_in_default>1</show_in_default>
63
+ <show_in_website>1</show_in_website>
64
+ <show_in_store>1</show_in_store>
65
+ <fields>
66
+ <zoomWidth translate="label">
67
+ <label>Width</label>
68
+ <frontend_type>text</frontend_type>
69
+ <comment>Zoom box width</comment>
70
+ <sort_order>2</sort_order>
71
+ <show_in_default>1</show_in_default>
72
+ <show_in_website>1</show_in_website>
73
+ <show_in_store>1</show_in_store>
74
+ </zoomWidth>
75
+ <zoomHeight translate="label">
76
+ <label>Height</label>
77
+ <comment>Zoom box height</comment>
78
+ <frontend_type>text</frontend_type>
79
+ <sort_order>3</sort_order>
80
+ <show_in_default>1</show_in_default>
81
+ <show_in_website>1</show_in_website>
82
+ <show_in_store>1</show_in_store>
83
+ </zoomHeight>
84
+ <position translate="label">
85
+ <label>Position</label>
86
+ <comment>Zoom box position</comment>
87
+ <frontend_type>select</frontend_type>
88
+ <source_model>magic/gallery_cloudZoom_position</source_model>
89
+ <sort_order>4</sort_order>
90
+ <show_in_default>1</show_in_default>
91
+ <show_in_website>1</show_in_website>
92
+ <show_in_store>1</show_in_store>
93
+ </position>
94
+ <adjustX translate="label">
95
+ <label>Position from X-axis</label>
96
+ <comment>Position from X-axis</comment>
97
+ <frontend_type>text</frontend_type>
98
+ <sort_order>5</sort_order>
99
+ <show_in_default>1</show_in_default>
100
+ <show_in_website>1</show_in_website>
101
+ <show_in_store>1</show_in_store>
102
+ </adjustX>
103
+ <adjustY translate="label">
104
+ <label>Position from Y-axis</label>
105
+ <comment>Position from X-axis.</comment>
106
+ <frontend_type>text</frontend_type>
107
+ <sort_order>6</sort_order>
108
+ <show_in_default>1</show_in_default>
109
+ <show_in_website>1</show_in_website>
110
+ <show_in_store>1</show_in_store>
111
+ </adjustY>
112
+ </fields>
113
+ </zoomImage>
114
+ </groups>
115
+ </magic_cloudzoom>
116
+ </sections>
117
+ </config>
app/code/community/TM/EasyTabs/Helper/Data.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class TM_EasyTabs_Helper_Data extends Mage_Core_Helper_Abstract
4
+ {
5
+
6
+ }
app/code/community/TM/EasyTabs/etc/adminhtml.xml ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <config>
3
+ <acl>
4
+ <resources>
5
+ <admin>
6
+ <children>
7
+ <system>
8
+ <children>
9
+ <config>
10
+ <children>
11
+ <easy_tabs translate="title" module="easytabs">
12
+ <title>Easy Tabs Section</title>
13
+ <sort_order>60</sort_order>
14
+ </easy_tabs>
15
+ </children>
16
+ </config>
17
+ </children>
18
+ </system>
19
+ </children>
20
+ </admin>
21
+ </resources>
22
+ </acl>
23
+ </config>
app/code/community/TM/EasyTabs/etc/config.xml ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <TM_EasyTabs>
5
+ <version>1.2.2</version>
6
+ </TM_EasyTabs>
7
+ </modules>
8
+ <global>
9
+ <helpers>
10
+ <easytabs>
11
+ <class>TM_EasyTabs_Helper</class>
12
+ </easytabs>
13
+ </helpers>
14
+ <resources>
15
+ <easytabs_setup>
16
+ <setup>
17
+ <module>TM_EasyTabs</module>
18
+ </setup>
19
+ <connection>
20
+ <use>core_setup</use>
21
+ </connection>
22
+ </easytabs_setup>
23
+ <easytabs_write>
24
+ <connection>
25
+ <use>core_write</use>
26
+ </connection>
27
+ </easytabs_write>
28
+ <easytabs_read>
29
+ <connection>
30
+ <use>core_read</use>
31
+ </connection>
32
+ </easytabs_read>
33
+ </resources>
34
+ </global>
35
+ <frontend>
36
+ <layout>
37
+ <updates>
38
+ <easytabs>
39
+ <file>easytabs.xml</file>
40
+ </easytabs>
41
+ </updates>
42
+ </layout>
43
+ <translate>
44
+ <modules>
45
+ <TM_EasyTabs>
46
+ <files>
47
+ <default>TM_EasyTabs.csv</default>
48
+ </files>
49
+ </TM_EasyTabs>
50
+ </modules>
51
+ </translate>
52
+ </frontend>
53
+ <default>
54
+ <easytabs>
55
+ <general>
56
+ <enabled>0</enabled>
57
+ <descriptiontabbed>0</descriptiontabbed>
58
+ <additionaltabbed>0</additionaltabbed>
59
+ <upsellproductstabbed>0</upsellproductstabbed>
60
+ <relatedtabbed>0</relatedtabbed>
61
+ <tagstabbed>0</tagstabbed>
62
+ <reviewtabbed>0</reviewtabbed>
63
+ </general>
64
+ <custom>
65
+ <customtab>0</customtab>
66
+ <customtab1>0</customtab1>
67
+ <customtab2>0</customtab2>
68
+ <customtab3>0</customtab3>
69
+ <customtab4>0</customtab4>
70
+ </custom>
71
+ <customcms>
72
+ <tabcms>0</tabcms>
73
+ <tabcms1>0</tabcms1>
74
+ <tabcms2>0</tabcms2>
75
+ <tabcms3>0</tabcms3>
76
+ <tabcms4>0</tabcms4>
77
+ </customcms>
78
+ </easytabs>
79
+ </default>
80
+ <adminhtml>
81
+ <translate>
82
+ <modules>
83
+ <TM_EasyTabs>
84
+ <files>
85
+ <default>TM_EasyTabs.csv</default>
86
+ </files>
87
+ </TM_EasyTabs>
88
+ </modules>
89
+ </translate>
90
+ </adminhtml>
91
+ </config>
app/code/community/TM/EasyTabs/etc/system.xml ADDED
@@ -0,0 +1,376 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <tabs>
4
+ <templates_master translate="label" module="easytabs">
5
+ <label>Templates-master</label>
6
+ <sort_order>196</sort_order>
7
+ </templates_master>
8
+ </tabs>
9
+ <sections>
10
+ <easy_tabs translate="label" module="easytabs">
11
+ <label>Easy Tabs</label>
12
+ <tab>templates_master</tab>
13
+ <frontend_type>text</frontend_type>
14
+ <sort_order>57</sort_order>
15
+ <show_in_default>1</show_in_default>
16
+ <show_in_website>1</show_in_website>
17
+ <show_in_store>1</show_in_store>
18
+ <groups>
19
+ <general translate="label">
20
+ <label>General</label>
21
+ <frontend_type>text</frontend_type>
22
+ <sort_order>10</sort_order>
23
+ <show_in_default>1</show_in_default>
24
+ <show_in_website>1</show_in_website>
25
+ <show_in_store>1</show_in_store>
26
+ <fields>
27
+ <enabled translate="label">
28
+ <label>Enable easy tabs</label>
29
+ <frontend_type>select</frontend_type>
30
+ <source_model>adminhtml/system_config_source_yesno</source_model>
31
+ <sort_order>1</sort_order>
32
+ <show_in_default>1</show_in_default>
33
+ <show_in_website>1</show_in_website>
34
+ <show_in_store>1</show_in_store>
35
+ </enabled>
36
+ <descriptiontabbed translate="label">
37
+ <label>Enable description tab</label>
38
+ <frontend_type>select</frontend_type>
39
+ <source_model>adminhtml/system_config_source_yesno</source_model>
40
+ <sort_order>2</sort_order>
41
+ <show_in_default>1</show_in_default>
42
+ <show_in_website>1</show_in_website>
43
+ <show_in_store>1</show_in_store>
44
+ </descriptiontabbed>
45
+ <additionaltabbed translate="label">
46
+ <label>Enable additional info tab</label>
47
+ <frontend_type>select</frontend_type>
48
+ <source_model>adminhtml/system_config_source_yesno</source_model>
49
+ <sort_order>3</sort_order>
50
+ <show_in_default>1</show_in_default>
51
+ <show_in_website>1</show_in_website>
52
+ <show_in_store>1</show_in_store>
53
+ </additionaltabbed>
54
+ <upsellproductstabbed translate="label">
55
+ <label>Enable upsell products tab</label>
56
+ <frontend_type>select</frontend_type>
57
+ <source_model>adminhtml/system_config_source_yesno</source_model>
58
+ <sort_order>4</sort_order>
59
+ <show_in_default>1</show_in_default>
60
+ <show_in_website>1</show_in_website>
61
+ <show_in_store>1</show_in_store>
62
+ </upsellproductstabbed>
63
+ <relatedtabbed translate="label">
64
+ <label>Enable related products tab</label>
65
+ <frontend_type>select</frontend_type>
66
+ <source_model>adminhtml/system_config_source_yesno</source_model>
67
+ <sort_order>5</sort_order>
68
+ <show_in_default>1</show_in_default>
69
+ <show_in_website>1</show_in_website>
70
+ <show_in_store>1</show_in_store>
71
+ </relatedtabbed>
72
+ <tagstabbed translate="label">
73
+ <label>Enable tags products tab</label>
74
+ <frontend_type>select</frontend_type>
75
+ <source_model>adminhtml/system_config_source_yesno</source_model>
76
+ <sort_order>6</sort_order>
77
+ <show_in_default>1</show_in_default>
78
+ <show_in_website>1</show_in_website>
79
+ <show_in_store>1</show_in_store>
80
+ </tagstabbed>
81
+ <reviewtabbed translate="label">
82
+ <label>Enable product's review tab</label>
83
+ <frontend_type>select</frontend_type>
84
+ <source_model>adminhtml/system_config_source_yesno</source_model>
85
+ <sort_order>7</sort_order>
86
+ <show_in_default>1</show_in_default>
87
+ <show_in_website>1</show_in_website>
88
+ <show_in_store>1</show_in_store>
89
+ </reviewtabbed>
90
+ </fields>
91
+ </general>
92
+ <custom translate="label">
93
+ <label>Custom tabs</label>
94
+ <frontend_type>text</frontend_type>
95
+ <sort_order>20</sort_order>
96
+ <show_in_default>1</show_in_default>
97
+ <show_in_website>1</show_in_website>
98
+ <show_in_store>1</show_in_store>
99
+ <fields>
100
+ <customtab translate="label">
101
+ <label>Enable custom tab #1</label>
102
+ <frontend_type>select</frontend_type>
103
+ <source_model>adminhtml/system_config_source_yesno</source_model>
104
+ <sort_order>11</sort_order>
105
+ <show_in_default>1</show_in_default>
106
+ <show_in_website>1</show_in_website>
107
+ <show_in_store>1</show_in_store>
108
+ </customtab>
109
+ <customtabid translate="label comment">
110
+ <label>Custom tab #1 attribute id</label>
111
+ <comment>Show value of product attribute with following identifier</comment>
112
+ <frontend_type>text</frontend_type>
113
+ <sort_order>12</sort_order>
114
+ <show_in_default>1</show_in_default>
115
+ <show_in_website>1</show_in_website>
116
+ <show_in_store>1</show_in_store>
117
+ </customtabid>
118
+ <customtabname translate="label comment">
119
+ <label>Custom tab #1 name</label>
120
+ <frontend_type>text</frontend_type>
121
+ <sort_order>13</sort_order>
122
+ <show_in_default>1</show_in_default>
123
+ <show_in_website>1</show_in_website>
124
+ <show_in_store>1</show_in_store>
125
+ </customtabname>
126
+ <customtab1 translate="label">
127
+ <label>Enable custom tab #2</label>
128
+ <frontend_type>select</frontend_type>
129
+ <source_model>adminhtml/system_config_source_yesno</source_model>
130
+ <sort_order>21</sort_order>
131
+ <show_in_default>1</show_in_default>
132
+ <show_in_website>1</show_in_website>
133
+ <show_in_store>1</show_in_store>
134
+ </customtab1>
135
+ <customtabid1 translate="label comment">
136
+ <label>Custom tab #2 attribute</label>
137
+ <comment>Show value of product attribute with following identifier</comment>
138
+ <frontend_type>text</frontend_type>
139
+ <sort_order>22</sort_order>
140
+ <show_in_default>1</show_in_default>
141
+ <show_in_website>1</show_in_website>
142
+ <show_in_store>1</show_in_store>
143
+ </customtabid1>
144
+ <customtabname1 translate="label comment">
145
+ <label>Custom tab #2 name</label>
146
+ <frontend_type>text</frontend_type>
147
+ <sort_order>23</sort_order>
148
+ <show_in_default>1</show_in_default>
149
+ <show_in_website>1</show_in_website>
150
+ <show_in_store>1</show_in_store>
151
+ </customtabname1>
152
+ <customtab2 translate="label">
153
+ <label>Enable custom tab #3</label>
154
+ <frontend_type>select</frontend_type>
155
+ <source_model>adminhtml/system_config_source_yesno</source_model>
156
+ <sort_order>31</sort_order>
157
+ <show_in_default>1</show_in_default>
158
+ <show_in_website>1</show_in_website>
159
+ <show_in_store>1</show_in_store>
160
+ </customtab2>
161
+ <customtabid2 translate="label comment">
162
+ <label>Custom tab #3 attribute</label>
163
+ <comment>Show value of product attribute with following identifier</comment>
164
+ <frontend_type>text</frontend_type>
165
+ <sort_order>32</sort_order>
166
+ <show_in_default>1</show_in_default>
167
+ <show_in_website>1</show_in_website>
168
+ <show_in_store>1</show_in_store>
169
+ </customtabid2>
170
+ <customtabname2 translate="label comment">
171
+ <label>Custom tab #3 name</label>
172
+ <frontend_type>text</frontend_type>
173
+ <sort_order>33</sort_order>
174
+ <show_in_default>1</show_in_default>
175
+ <show_in_website>1</show_in_website>
176
+ <show_in_store>1</show_in_store>
177
+ </customtabname2>
178
+ <customtab3 translate="label">
179
+ <label>Enable custom tab #4</label>
180
+ <frontend_type>select</frontend_type>
181
+ <source_model>adminhtml/system_config_source_yesno</source_model>
182
+ <sort_order>41</sort_order>
183
+ <show_in_default>1</show_in_default>
184
+ <show_in_website>1</show_in_website>
185
+ <show_in_store>1</show_in_store>
186
+ </customtab3>
187
+ <customtabid3 translate="label comment">
188
+ <label>Custom tab #4 attribute id</label>
189
+ <comment>Show value of product attribute with following identifier</comment>
190
+ <frontend_type>text</frontend_type>
191
+ <sort_order>42</sort_order>
192
+ <show_in_default>1</show_in_default>
193
+ <show_in_website>1</show_in_website>
194
+ <show_in_store>1</show_in_store>
195
+ </customtabid3>
196
+ <customtabname3 translate="label comment">
197
+ <label>Custom tab #4 name</label>
198
+ <frontend_type>text</frontend_type>
199
+ <sort_order>43</sort_order>
200
+ <show_in_default>1</show_in_default>
201
+ <show_in_website>1</show_in_website>
202
+ <show_in_store>1</show_in_store>
203
+ </customtabname3>
204
+ <customtab4 translate="label">
205
+ <label>Enable custom tab #5</label>
206
+ <frontend_type>select</frontend_type>
207
+ <source_model>adminhtml/system_config_source_yesno</source_model>
208
+ <sort_order>51</sort_order>
209
+ <show_in_default>1</show_in_default>
210
+ <show_in_website>1</show_in_website>
211
+ <show_in_store>1</show_in_store>
212
+ </customtab4>
213
+ <customtabid4 translate="label comment">
214
+ <label>Custom tab #5 attribute id</label>
215
+ <comment>Show value of product attribute with following identifier</comment>
216
+ <frontend_type>text</frontend_type>
217
+ <sort_order>52</sort_order>
218
+ <show_in_default>1</show_in_default>
219
+ <show_in_website>1</show_in_website>
220
+ <show_in_store>1</show_in_store>
221
+ </customtabid4>
222
+ <customtabname4 translate="label comment">
223
+ <label>Custom tab #5 name</label>
224
+ <frontend_type>text</frontend_type>
225
+ <sort_order>53</sort_order>
226
+ <show_in_default>1</show_in_default>
227
+ <show_in_website>1</show_in_website>
228
+ <show_in_store>1</show_in_store>
229
+ </customtabname4>
230
+ </fields>
231
+ </custom>
232
+
233
+ <customcms translate="label">
234
+ <label>Additional CMS tabs</label>
235
+ <frontend_type>text</frontend_type>
236
+ <sort_order>30</sort_order>
237
+ <show_in_default>1</show_in_default>
238
+ <show_in_website>1</show_in_website>
239
+ <show_in_store>1</show_in_store>
240
+ <fields>
241
+ <tabcms translate="label">
242
+ <label>Enable cms tab #1</label>
243
+ <frontend_type>select</frontend_type>
244
+ <source_model>adminhtml/system_config_source_yesno</source_model>
245
+ <sort_order>11</sort_order>
246
+ <show_in_default>1</show_in_default>
247
+ <show_in_website>1</show_in_website>
248
+ <show_in_store>1</show_in_store>
249
+ </tabcms>
250
+ <tabidcms translate="label comment">
251
+ <label>CMS tab #1 block id</label>
252
+ <comment>Show value of static block with following identifier</comment>
253
+ <frontend_type>text</frontend_type>
254
+ <sort_order>12</sort_order>
255
+ <show_in_default>1</show_in_default>
256
+ <show_in_website>1</show_in_website>
257
+ <show_in_store>1</show_in_store>
258
+ </tabidcms>
259
+ <tabnamecms translate="label comment">
260
+ <label>CMS tab #1 name</label>
261
+ <frontend_type>text</frontend_type>
262
+ <sort_order>13</sort_order>
263
+ <show_in_default>1</show_in_default>
264
+ <show_in_website>1</show_in_website>
265
+ <show_in_store>1</show_in_store>
266
+ </tabnamecms>
267
+ <tabcms1 translate="label">
268
+ <label>Enable cms tab #2</label>
269
+ <frontend_type>select</frontend_type>
270
+ <source_model>adminhtml/system_config_source_yesno</source_model>
271
+ <sort_order>21</sort_order>
272
+ <show_in_default>1</show_in_default>
273
+ <show_in_website>1</show_in_website>
274
+ <show_in_store>1</show_in_store>
275
+ </tabcms1>
276
+ <tabidcms1 translate="label comment">
277
+ <label>CMS tab #2 block id</label>
278
+ <comment>Show value of pstatic block with following identifier</comment>
279
+ <frontend_type>text</frontend_type>
280
+ <sort_order>22</sort_order>
281
+ <show_in_default>1</show_in_default>
282
+ <show_in_website>1</show_in_website>
283
+ <show_in_store>1</show_in_store>
284
+ </tabidcms1>
285
+ <tabnamecms1 translate="label comment">
286
+ <label>CMS tab #2 name</label>
287
+ <frontend_type>text</frontend_type>
288
+ <sort_order>23</sort_order>
289
+ <show_in_default>1</show_in_default>
290
+ <show_in_website>1</show_in_website>
291
+ <show_in_store>1</show_in_store>
292
+ </tabnamecms1>
293
+ <tabcms2 translate="label">
294
+ <label>Enable cms tab #3</label>
295
+ <frontend_type>select</frontend_type>
296
+ <source_model>adminhtml/system_config_source_yesno</source_model>
297
+ <sort_order>31</sort_order>
298
+ <show_in_default>1</show_in_default>
299
+ <show_in_website>1</show_in_website>
300
+ <show_in_store>1</show_in_store>
301
+ </tabcms2>
302
+ <tabidcms2 translate="label comment">
303
+ <label>CMS tab #3 block id</label>
304
+ <comment>Show value of static block with following identifier</comment>
305
+ <frontend_type>text</frontend_type>
306
+ <sort_order>32</sort_order>
307
+ <show_in_default>1</show_in_default>
308
+ <show_in_website>1</show_in_website>
309
+ <show_in_store>1</show_in_store>
310
+ </tabidcms2>
311
+ <tabnamecms2 translate="label comment">
312
+ <label>CMS tab #3 name</label>
313
+ <frontend_type>text</frontend_type>
314
+ <sort_order>33</sort_order>
315
+ <show_in_default>1</show_in_default>
316
+ <show_in_website>1</show_in_website>
317
+ <show_in_store>1</show_in_store>
318
+ </tabnamecms2>
319
+ <tabcms3 translate="label">
320
+ <label>Enable cms tab #4</label>
321
+ <frontend_type>select</frontend_type>
322
+ <source_model>adminhtml/system_config_source_yesno</source_model>
323
+ <sort_order>41</sort_order>
324
+ <show_in_default>1</show_in_default>
325
+ <show_in_website>1</show_in_website>
326
+ <show_in_store>1</show_in_store>
327
+ </tabcms3>
328
+ <tabidcms3 translate="label comment">
329
+ <label>CMS tab #4 block id</label>
330
+ <comment>Show value of static block with following identifier</comment>
331
+ <frontend_type>text</frontend_type>
332
+ <sort_order>42</sort_order>
333
+ <show_in_default>1</show_in_default>
334
+ <show_in_website>1</show_in_website>
335
+ <show_in_store>1</show_in_store>
336
+ </tabidcms3>
337
+ <tabnamecms3 translate="label comment">
338
+ <label>CMS tab #4 name</label>
339
+ <frontend_type>text</frontend_type>
340
+ <sort_order>43</sort_order>
341
+ <show_in_default>1</show_in_default>
342
+ <show_in_website>1</show_in_website>
343
+ <show_in_store>1</show_in_store>
344
+ </tabnamecms3>
345
+ <tabcms4 translate="label">
346
+ <label>Enable cms tab #5</label>
347
+ <frontend_type>select</frontend_type>
348
+ <source_model>adminhtml/system_config_source_yesno</source_model>
349
+ <sort_order>51</sort_order>
350
+ <show_in_default>1</show_in_default>
351
+ <show_in_website>1</show_in_website>
352
+ <show_in_store>1</show_in_store>
353
+ </tabcms4>
354
+ <tabidcms4 translate="label comment">
355
+ <label>CMS tab #5 id</label>
356
+ <comment>Show value of static block with following identifier</comment>
357
+ <frontend_type>text</frontend_type>
358
+ <sort_order>52</sort_order>
359
+ <show_in_default>1</show_in_default>
360
+ <show_in_website>1</show_in_website>
361
+ <show_in_store>1</show_in_store>
362
+ </tabidcms4>
363
+ <tabnamecms4 translate="label comment">
364
+ <label>CMS tab #5 name</label>
365
+ <frontend_type>text</frontend_type>
366
+ <sort_order>53</sort_order>
367
+ <show_in_default>1</show_in_default>
368
+ <show_in_website>1</show_in_website>
369
+ <show_in_store>1</show_in_store>
370
+ </tabnamecms4>
371
+ </fields>
372
+ </customcms>
373
+ </groups>
374
+ </easy_tabs>
375
+ </sections>
376
+ </config>
app/code/community/VS/Bestseller/Block/About.php ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class VS_Bestseller_Block_About
4
+ extends Mage_Adminhtml_Block_Abstract
5
+ implements Varien_Data_Form_Element_Renderer_Interface
6
+ {
7
+
8
+ /**
9
+ * Render fieldset html
10
+ *
11
+ * @param Varien_Data_Form_Element_Abstract $element
12
+ * @return string
13
+ */
14
+ public function render(Varien_Data_Form_Element_Abstract $element)
15
+ {
16
+ $logopath = 'http://www.magentocommerce.com/images/avatars/uploads/avatar_311790.jpg';
17
+ $html = <<<HTML
18
+ <div style="background:url('$logopath') no-repeat scroll 14px 14px #EAF0EE;border:1px solid #CCCCCC;margin-bottom:10px;padding:10px 5px 5px 164px;">
19
+ <p>
20
+ <strong>PREMIUM and FREE MAGENTO TEMPALTES and EXTENSIONS</strong><br />
21
+ <a href="http://www.magentocommerce.com/magento-connect/developer/virendra#extensions" target="_blank">VS</a> offers a wide choice of nice-looking and easily editable free and premium Magento extensions. You can find free extensions for the extremely popular Magento eCommerce platform.<br />
22
+ </p>
23
+ <p>
24
+ My extensions on <a href="http://www.magentocommerce.com/magento-connect/developer/virendra#extensions" target="_blank">MagentoConnect</a><br />
25
+ Should you have any questions email at <a href="mailto:bhardwajveerendra@gmail.com">bhardwajveerendra@gmail.com</a>
26
+ <br />
27
+ </p>
28
+ </div>
29
+ HTML;
30
+ return $html;
31
+ }
32
+ }
app/code/community/VS/Bestseller/Block/Bestseller.php ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class VS_Bestseller_Block_Bestseller extends Mage_Core_Block_Template {
3
+ public function __construct(){
4
+ parent::__construct();
5
+ $storeId = Mage::app()->getStore()->getId();
6
+ $howmany = Mage::getStoreConfig('bestseller/general/howmany');
7
+ $products = Mage::getResourceModel('reports/product_collection')
8
+ ->addOrderedQty()
9
+ // ->addAttributeToSelect('*')
10
+ ->addAttributeToSelect(array('name', 'price', 'thumbnail'))
11
+ ->setStoreId($storeId)
12
+ ->addStoreFilter($storeId)
13
+ ->setOrder('ordered_qty', 'desc'); // most best sellers on top
14
+ Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($products);
15
+ Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($products);
16
+
17
+ $products->setPageSize($howmany)->setCurPage(1);
18
+ $this->setProductCollection($products);
19
+ }
20
+ }
app/code/community/VS/Bestseller/Helper/Data.php ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ *
4
+ * Edition :- Community
5
+ * Developed By :- virendra Kumar Sharma
6
+ *
7
+ */
8
+ class VS_Bestseller_Helper_Data extends Mage_Core_Helper_Abstract
9
+ {
10
+
11
+ }
app/code/community/VS/Bestseller/etc/config.xml ADDED
@@ -0,0 +1,81 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+
3
+ <config>
4
+ <modules>
5
+ <VS_Bestseller>
6
+ <version>2.0</version>
7
+ </VS_Bestseller>
8
+ </modules>
9
+ <global>
10
+ <helpers>
11
+ <bestseller>
12
+ <class>VS_Bestseller_Helper</class>
13
+ </bestseller>
14
+ </helpers>
15
+ <blocks>
16
+ <bestseller>
17
+ <class>VS_Bestseller_Block</class>
18
+ </bestseller>
19
+ </blocks>
20
+ <resources>
21
+ <bestseller_setup>
22
+ <setup>
23
+ <module>VS_Bestseller</module>
24
+ </setup>
25
+ <connection>
26
+ <use>core_setup</use>
27
+ </connection>
28
+ </bestseller_setup>
29
+ <bestseller_write>
30
+ <connection>
31
+ <use>core_write</use>
32
+ </connection>
33
+ </bestseller_write>
34
+ <bestseller_read>
35
+ <connection>
36
+ <use>core_read</use>
37
+ </connection>
38
+ </bestseller_read>
39
+ </resources>
40
+ </global>
41
+ <default>
42
+ <bestseller>
43
+ <general>
44
+ <enabledleft>1</enabledleft>
45
+ <enabledright>1</enabledright>
46
+ <howmany>5</howmany>
47
+ </general>
48
+ </bestseller>
49
+
50
+ </default>
51
+ <frontend>
52
+ <layout>
53
+ <updates>
54
+ <bestseller>
55
+ <file>bestseller.xml</file>
56
+ </bestseller>
57
+ </updates>
58
+ </layout>
59
+ </frontend>
60
+ <adminhtml>
61
+ <acl>
62
+ <resources>
63
+ <admin>
64
+ <children>
65
+ <system>
66
+ <children>
67
+ <config>
68
+ <children>
69
+ <bestseller>
70
+ <title>Sidebar Review</title>
71
+ </bestseller>
72
+ </children>
73
+ </config>
74
+ </children>
75
+ </system>
76
+ </children>
77
+ </admin>
78
+ </resources>
79
+ </acl>
80
+ </adminhtml>
81
+ </config>
app/code/community/VS/Bestseller/etc/system.xml ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <config>
4
+ <tabs>
5
+ <vs_extensions>
6
+ <label>VS Extensions</label>
7
+ <sort_order>198</sort_order>
8
+ </vs_extensions>
9
+ </tabs>
10
+ <sections>
11
+ <bestseller translate="label" >
12
+ <label>Bestseller Products</label>
13
+ <tab>vs_extensions</tab>
14
+ <frontend_type>text</frontend_type>
15
+ <sort_order>95</sort_order>
16
+ <show_in_default>1</show_in_default>
17
+ <show_in_website>1</show_in_website>
18
+ <show_in_store>1</show_in_store>
19
+ <groups>
20
+ <about translate="label">
21
+ <label>Developer</label>
22
+ <frontend_type>text</frontend_type>
23
+ <sort_order>0</sort_order>
24
+ <show_in_default>1</show_in_default>
25
+ <show_in_website>1</show_in_website>
26
+ <show_in_store>1</show_in_store>
27
+ <fields>
28
+ <info translate="label">
29
+ <frontend_model>bestseller/about</frontend_model>
30
+ <sort_order>1</sort_order>
31
+ <show_in_default>1</show_in_default>
32
+ <show_in_website>1</show_in_website>
33
+ <show_in_store>1</show_in_store>
34
+ </info>
35
+ </fields>
36
+ </about>
37
+ <general translate="label">
38
+ <label>Settings</label>
39
+ <frontend_type>text</frontend_type>
40
+ <sort_order>1</sort_order>
41
+ <show_in_default>1</show_in_default>
42
+ <show_in_website>1</show_in_website>
43
+ <show_in_store>1</show_in_store>
44
+ <fields>
45
+ <enabledleft translate="label">
46
+ <label>Enabled For Left</label>
47
+ <frontend_type>select</frontend_type>
48
+ <source_model>adminhtml/system_config_source_yesno</source_model>
49
+ <sort_order>1</sort_order>
50
+ <show_in_default>1</show_in_default>
51
+ <show_in_website>1</show_in_website>
52
+ <show_in_store>1</show_in_store>
53
+ </enabledleft>
54
+
55
+ <enabledright translate="label">
56
+ <label>Enabled For Right</label>
57
+ <frontend_type>select</frontend_type>
58
+ <source_model>adminhtml/system_config_source_yesno</source_model>
59
+ <sort_order>2</sort_order>
60
+ <show_in_default>1</show_in_default>
61
+ <show_in_website>1</show_in_website>
62
+ <show_in_store>1</show_in_store>
63
+ </enabledright>
64
+ <howmany translate="label">
65
+ <label>Reviews to display</label>
66
+ <frontend_type>text</frontend_type>
67
+ <sort_order>3</sort_order>
68
+ <show_in_default>1</show_in_default>
69
+ <show_in_website>1</show_in_website>
70
+ <show_in_store>1</show_in_store>
71
+ </howmany>
72
+
73
+
74
+ </fields>
75
+ </general>
76
+
77
+
78
+ </groups>
79
+
80
+ </bestseller>
81
+ </sections>
82
+ </config>
app/design/frontend/default/default/layout/magic_cloudzoom.xml ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout>
3
+ <catalog_product_view>
4
+ <reference name="head">
5
+ <action method="addCss">
6
+ <stylesheet>css/cloud-zoom.css</stylesheet>
7
+ </action>
8
+ <action method="addItem">
9
+ <type>skin_js</type>
10
+ <name>js/cloud-zoom.1.0.2.min.js</name>
11
+ </action>
12
+ </reference>
13
+
14
+ <reference name="product.info.media">
15
+ <action method="setTemplate" ifconfig="magic_cloudzoom/general/enabled">
16
+ <template>magic/catalog/product/view/media.phtml</template>
17
+ </action>
18
+ </reference>
19
+ </catalog_product_view>
20
+
21
+ <review_product_list translate="label">
22
+ <reference name="head">
23
+ <action method="addJs"><script>varien/product.js</script></action>
24
+ <action method="addCss">
25
+ <stylesheet>css/cloud-zoom.css</stylesheet>
26
+ </action>
27
+ <action method="addItem">
28
+ <type>skin_js</type>
29
+ <name>js/cloud-zoom.1.0.2.min.js</name>
30
+ </action>
31
+ </reference>
32
+
33
+ <reference name="product.info.media">
34
+ <action method="setTemplate" ifconfig="magic_cloudzoom/general/enabled">
35
+ <template>magic/catalog/product/view/media.phtml</template>
36
+ </action>
37
+ </reference>
38
+ </review_product_list>
39
+ </layout>
app/design/frontend/default/default/template/magic/catalog/product/view/media.phtml ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_product = $this->getProduct();
3
+ $_helper = $this->helper('catalog/output');
4
+ ?>
5
+ <?php
6
+ $mainImagePath = '';
7
+ $galleryImages = $this->getGalleryImages();
8
+ if (count($galleryImages) > 0) {
9
+ $gallery = '<div class="more-views">';
10
+ $gallery .= '<ul>';
11
+ foreach ($galleryImages as $_image) {
12
+ if ($_image->getFile() == $_product->getData('small_image')) {
13
+ $mainImagePath = $this->getGalleryUrl($_image);
14
+ }
15
+ $gallery .= '<li>'
16
+ . '<a href="' . $this->helper('catalog/image')->init($this->getProduct(), 'image', $_image->getFile()) . '" '
17
+ . 'rel="popupWin:\'' . $this->getGalleryUrl($_image) . '\', useZoom: \'cloudZoom\', smallImage: \'' . $this->getCloudImage($this->getProduct(), $_image) . '\'" class="cloud-zoom-gallery" title="' . $this->htmlEscape($_image->getLabel()) . '">'
18
+ . '<img src="' . $this->helper('catalog/image')->init($this->getProduct(), 'thumbnail', $_image->getFile())->resize(95) . '" alt="' . $this->htmlEscape($_image->getLabel()) . '" />'
19
+ . '</a></li>';
20
+ }
21
+ $gallery .= '</ul></div>';
22
+ }
23
+ ?>
24
+
25
+ <?php if ($_product->getImage() != 'no_selection' && $_product->getImage()): ?>
26
+ <div class="badge">
27
+ <?php if($_product->getData('new')){echo '<span class="new">'. $_product->getAttributeText('new').'</span>'; }?>
28
+ <?php if($_product->getData('sale')){echo '<span class="sale">'. $_product->getAttributeText('sale').'</span>'; }?>
29
+ </div>
30
+ <p class="product-image product-image-zoom">
31
+
32
+ <a rel="<?php echo $this->renderCloudOptions(); ?>" gallery="<?php echo $mainImagePath; ?>" href="<?php echo $this->helper('catalog/image')->init($_product, 'image'); ?>" class="cloud-zoom ajax" id="cloudZoom">
33
+ <?php
34
+ $_img = '<img id="image" src="'.$this->getCloudImage($_product).'" alt="'.$this->htmlEscape($this->getImageLabel()).'" title="'.$this->htmlEscape($this->getImageLabel()).'" />';
35
+ echo $_helper->productAttribute($_product, $_img, 'image');
36
+ ?>
37
+ </a>
38
+ </p>
39
+ <?php if(isset($gallery)): ?>
40
+ <p class="zoom-notice" id="track_hint"><?php echo $this->__('Click on above image to view full picture') ?></p>
41
+ <div class="thumbbox"><?php echo $gallery; ?></div>
42
+ <?php endif; ?>
43
+ <?php else: ?>
44
+ <p class="product-image">
45
+ <?php
46
+ $_img = '<img src="'.$this->helper('catalog/image')->init($_product, 'image')->resize(265).'" alt="'.$this->htmlEscape($this->getImageLabel()).'" title="'.$this->htmlEscape($this->getImageLabel()).'" />';
47
+ echo $_helper->productAttribute($_product, $_img, 'image');
48
+ ?>
49
+ </p>
50
+ <?php endif; ?>
51
+ <script type="text/javascript">
52
+ jQuery(document).ready(function(){
53
+ var trigggerflag = 1;
54
+ jQuery('.product-image-zoom #wrap').click(function(){
55
+ if(trigggerflag){
56
+ trigggerflag =0;
57
+ jQuery('#cloudZoom').trigger('click');
58
+ }
59
+ trigggerflag =1;
60
+ });
61
+ jQuery('.more-views').jcarousel({
62
+ start: 1,
63
+ scroll:1,
64
+ wrap: 'circular'
65
+ });
66
+ jQuery('.more-views').hover(function(){
67
+ jQuery(".jcarousel-prev").stop().delay(0).animate({left: '-21px'},{queue:true,duration:300});
68
+ jQuery(".jcarousel-next").stop().delay(0).animate({right: '-21px'},{queue:true,duration:300});
69
+ },function(){
70
+ jQuery(".jcarousel-prev").stop().delay(0).animate({left:'5px'},{queue:true,duration:300});
71
+ jQuery(".jcarousel-next").stop().delay(0).animate({right:'5px'},{queue:true,duration:300});
72
+ });
73
+ });
74
+ </script>
75
+
app/design/frontend/default/shoe_store/layout/ajax.xml ADDED
@@ -0,0 +1,77 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout version="0.1.0">
3
+ <catalog_product_view>
4
+ <reference name='product.info.addtocart'>
5
+ <action method='setTemplate'><template>ajax/catalog/product/view/addtocart.phtml</template></action>
6
+ </reference>
7
+ </catalog_product_view>
8
+ <ajax_index_static>
9
+ <reference name="root">
10
+ <action method="setTemplate"><template>page/empty.phtml</template></action>
11
+ </reference>
12
+ <reference name='content'>
13
+ <block type="core/template" name="contactForm" template="contacts/form.phtml"/>
14
+ </reference>
15
+ </ajax_index_static>
16
+ <ajax_index_options>
17
+ <reference name="root">
18
+ <action method="setTemplate"><template>page/empty.phtml</template></action>
19
+ <remove name="mdl_ajax_wrapper"/>
20
+ </reference>
21
+ <reference name="head">
22
+ <action method="addJs"><script>varien/product.js</script></action>
23
+ <action method="addJs"><script>varien/configurable.js</script></action>
24
+ <action method="removeItem"><type>skin_css</type><name>css/skeleton.css</name></action>
25
+ <action method="removeItem"><type>skin_css</type><name>css/skeleton.css</name></action>
26
+ <action method="addItem"><type>js_css</type><name>calendar/calendar-win2k-1.css</name><params/><!--<if/><condition>can_load_calendar_js</condition>--></action>
27
+ <action method="addItem"><type>js</type><name>calendar/calendar.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
28
+ <action method="addItem"><type>js</type><name>calendar/calendar-setup.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
29
+ </reference>
30
+ <reference name="content">
31
+ <block type="catalog/product_view" name="product.info" template="ajax/catalog/product/options.phtml">
32
+ <block type="catalog/product_view_media" name="product.info.quick_media" as="media" template="catalog/product/view/quick_media.phtml"/>
33
+ <!--
34
+ <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/summary.phtml</template></action>
35
+ <action method="addReviewSummaryTemplate"><type>short</type><template>review/helper/summary_short.phtml</template></action>
36
+ <action method="addReviewSummaryTemplate"><type>...</type><template>...</template></action>
37
+ -->
38
+
39
+ <block type="catalog/product_view" name="product.info.addtocart" as="addtocart" template="ajax/catalog/product/view/addtocart.phtml"/>
40
+
41
+ <block type="catalog/product_view" name="product.info.options.wrapper" as="product_options_wrapper" template="catalog/product/view/options/wrapper.phtml" translate="label">
42
+ <label>Info Column Options Wrapper</label>
43
+ <block type="core/template" name="options_js" template="catalog/product/view/options/js.phtml"/>
44
+ <block type="catalog/product_view_options" name="product.info.options" as="product_options" template="catalog/product/view/options.phtml">
45
+ <action method="addOptionRenderer"><type>text</type><block>catalog/product_view_options_type_text</block><template>catalog/product/view/options/type/text.phtml</template></action>
46
+ <action method="addOptionRenderer"><type>file</type><block>catalog/product_view_options_type_file</block><template>catalog/product/view/options/type/file.phtml</template></action>
47
+ <action method="addOptionRenderer"><type>select</type><block>catalog/product_view_options_type_select</block><template>catalog/product/view/options/type/select.phtml</template></action>
48
+ <action method="addOptionRenderer"><type>date</type><block>catalog/product_view_options_type_date</block><template>catalog/product/view/options/type/date.phtml</template></action>
49
+ </block>
50
+ <block type="core/html_calendar" name="html_calendar" as="html_calendar" template="page/js/calendar.phtml"/>
51
+ </block>
52
+ <block type="catalog/product_view" name="product.info.options.wrapper.bottom" as="product_options_wrapper_bottom" template="catalog/product/view/options/wrapper/bottom.phtml" translate="label">
53
+ <label>Bottom Block Options Wrapper</label>
54
+ <action method="insert"><block>product.tierprices</block></action>
55
+ <block type="catalog/product_view" name="product.clone_prices" as="prices" template="catalog/product/view/price_clone.phtml"/>
56
+ <action method="append"><block>product.info.addtocart</block></action>
57
+ <action method="append"><block>product.info.addto</block></action>
58
+ </block>
59
+
60
+ <block type="core/template_facade" name="product.info.container1" as="container1">
61
+ <action method="setDataByKey"><key>alias_in_layout</key><value>container1</value></action>
62
+ <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
63
+ <action method="append"><block>product.info.options.wrapper</block></action>
64
+ <action method="append"><block>product.info.options.wrapper.bottom</block></action>
65
+ </block>
66
+ <block type="core/template_facade" name="product.info.container2" as="container2">
67
+ <action method="setDataByKey"><key>alias_in_layout</key><value>container2</value></action>
68
+ <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
69
+ <action method="append"><block>product.info.options.wrapper</block></action>
70
+ <action method="append"><block>product.info.options.wrapper.bottom</block></action>
71
+ </block>
72
+ <action method="unsetCallChild"><child>container1</child><call>ifEquals</call><if>0</if><key>alias_in_layout</key><key>options_container</key></action>
73
+ <action method="unsetCallChild"><child>container2</child><call>ifEquals</call><if>0</if><key>alias_in_layout</key><key>options_container</key></action>
74
+ </block>
75
+ </reference>
76
+ </ajax_index_options>
77
+ </layout>
app/design/frontend/default/shoe_store/layout/bestseller.xml ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <layout version="0.1.0">
4
+ <default>
5
+ <reference name="left">
6
+ <block type="bestseller/bestseller" name="catalog.bestseller.left" after="-">
7
+ <action method="setTemplate" ifconfig="bestseller/general/enabledleft">
8
+ <template>bestseller/bestseller.phtml</template>
9
+ </action>
10
+ </block>
11
+ </reference>
12
+
13
+ <reference name="right">
14
+ <block type="bestseller/bestseller" before="tags_popular" name="catalog.bestseller.right" after="-">
15
+ <action method="setTemplate" ifconfig="bestseller/general/enabledright">
16
+ <template>bestseller/bestseller.phtml</template>
17
+ </action>
18
+ </block>
19
+ </reference>
20
+ </default>
21
+ </layout>
22
+
app/design/frontend/default/shoe_store/layout/catalog.xml ADDED
@@ -0,0 +1,418 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+
28
+ Supported layout update handles (action):
29
+ - catalog_product_gallery
30
+ - catalog_product_compare_index
31
+
32
+ Supported layout update handles (special):
33
+ - default
34
+ - catalog_category_default
35
+ - catalog_category_layered
36
+ - catalog_product_view
37
+
38
+ -->
39
+ <layout version="0.1.0">
40
+
41
+ <!--
42
+ Default layout, loads most of the pages
43
+ -->
44
+
45
+ <default>
46
+
47
+ <!-- Mage_Catalog -->
48
+ <reference name="left">
49
+ <block type="core/template" name="left.permanent.callout" template="callouts/left_col.phtml">
50
+ <action method="setImgSrc"><src>images/shoe_store/side_banner.png</src></action>
51
+ <action method="setImgAlt" translate="alt" module="catalog"><alt>Our customer service is available 24/7. Call us at (555) 555-0123.</alt></action>
52
+ <action method="setLinkUrl"><url>checkout/cart</url></action>
53
+ </block>
54
+ </reference>
55
+ <reference name="right">
56
+ <block type="catalog/product_compare_sidebar" after="cart_sidebar" name="catalog.compare.sidebar" template="catalog/product/compare/sidebar.phtml"/>
57
+ <block type="core/template" name="right.permanent.callout" template="callouts/right_col.phtml">
58
+ <action method="setImgSrc"><src>images/shoe_store/side_banner.png</src></action>
59
+ <action method="setImgAlt" translate="alt" module="catalog"><alt>Keep your eyes open for our special Back to School items and save A LOT!</alt></action>
60
+ </block>
61
+ </reference>
62
+ <reference name="footer_links">
63
+ <action method="addLink" translate="label title" module="catalog" ifconfig="catalog/seo/site_map"><label>Site Map</label><url helper="catalog/map/getCategoryUrl" /><title>Site Map</title></action>
64
+ </reference>
65
+ <block type="catalog/product_price_template" name="catalog_product_price_template" />
66
+ </default>
67
+
68
+
69
+ <!--
70
+ Category default layout
71
+ -->
72
+
73
+ <catalog_category_default translate="label">
74
+ <label>Catalog Category (Non-Anchor)</label>
75
+ <reference name="left">
76
+ <block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml"/>
77
+ </reference>
78
+ <reference name="content">
79
+ <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
80
+ <block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
81
+ <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
82
+ <block type="page/html_pager" name="product_list_toolbar_pager"/>
83
+ <!-- The following code shows how to set your own pager increments -->
84
+ <!--
85
+ <action method="setDefaultListPerPage"><limit>4</limit></action>
86
+ <action method="setDefaultGridPerPage"><limit>9</limit></action>
87
+ <action method="addPagerLimit"><mode>list</mode><limit>2</limit></action>
88
+ <action method="addPagerLimit"><mode>list</mode><limit>4</limit></action>
89
+ <action method="addPagerLimit"><mode>list</mode><limit>6</limit></action>
90
+ <action method="addPagerLimit"><mode>list</mode><limit>8</limit></action>
91
+ <action method="addPagerLimit" translate="label"><mode>list</mode><limit>all</limit><label>All</label></action>
92
+ -->
93
+ </block>
94
+ <action method="addColumnCountLayoutDepend"><layout>empty</layout><count>6</count></action>
95
+ <action method="addColumnCountLayoutDepend"><layout>one_column</layout><count>5</count></action>
96
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_left</layout><count>4</count></action>
97
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_right</layout><count>4</count></action>
98
+ <action method="addColumnCountLayoutDepend"><layout>three_columns</layout><count>3</count></action>
99
+ <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
100
+ </block>
101
+ </block>
102
+ </reference>
103
+ </catalog_category_default>
104
+
105
+ <!--
106
+ Category layered navigation layout
107
+ -->
108
+
109
+ <catalog_category_layered translate="label">
110
+ <label>Catalog Category (Anchor)</label>
111
+ <reference name="left">
112
+ <block type="catalog/layer_view" name="catalog.leftnav" after="currency" template="catalog/layer/view.phtml"/>
113
+ </reference>
114
+ <reference name="content">
115
+ <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
116
+ <block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
117
+ <!-- <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/su.phtml</template></action> -->
118
+ <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
119
+ <block type="page/html_pager" name="product_list_toolbar_pager"/>
120
+ <!-- The following code shows how to set your own pager increments -->
121
+ <!--
122
+ <action method="setDefaultListPerPage"><limit>4</limit></action>
123
+ <action method="setDefaultGridPerPage"><limit>3</limit></action>
124
+ <action method="addPagerLimit"><mode>list</mode><limit>2</limit></action>
125
+ <action method="addPagerLimit"><mode>list</mode><limit>4</limit></action>
126
+ <action method="addPagerLimit"><mode>list</mode><limit>6</limit></action>
127
+ <action method="addPagerLimit"><mode>list</mode><limit>8</limit></action>
128
+ <action method="addPagerLimit" translate="label"><mode>list</mode><limit>all</limit><label>All</label></action>
129
+ <action method="addPagerLimit"><mode>grid</mode><limit>3</limit></action>
130
+ <action method="addPagerLimit"><mode>grid</mode><limit>6</limit></action>
131
+ <action method="addPagerLimit"><mode>grid</mode><limit>9</limit></action>
132
+ <action method="addPagerLimit" translate="label"><mode>grid</mode><limit>all</limit><label>All</label></action>
133
+ -->
134
+ </block>
135
+ <action method="addColumnCountLayoutDepend"><layout>empty</layout><count>6</count></action>
136
+ <action method="addColumnCountLayoutDepend"><layout>one_column</layout><count>5</count></action>
137
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_left</layout><count>4</count></action>
138
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_right</layout><count>4</count></action>
139
+ <action method="addColumnCountLayoutDepend"><layout>three_columns</layout><count>3</count></action>
140
+ <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
141
+ </block>
142
+ </block>
143
+ </reference>
144
+ </catalog_category_layered>
145
+
146
+ <!--
147
+ Compare products page
148
+ -->
149
+
150
+ <catalog_product_compare_index translate="label">
151
+ <label>Catalog Product Compare List</label>
152
+ <!-- Mage_Catalog -->
153
+ <reference name="root">
154
+ <action method="setTemplate"><template>page/popup.phtml</template></action>
155
+ </reference>
156
+ <reference name="head">
157
+ <action method="addJs"><script>scriptaculous/scriptaculous.js</script></action>
158
+ <action method="addJs"><script>varien/product.js</script></action>
159
+ </reference>
160
+ <reference name="content">
161
+ <block type="catalog/product_compare_list" name="catalog.compare.list" template="catalog/product/compare/list.phtml"/>
162
+ </reference>
163
+ </catalog_product_compare_index>
164
+
165
+ <customer_account_index>
166
+ <reference name="right">
167
+ <action method="unsetChild"><name>catalog.compare.sidebar</name></action>
168
+ </reference>
169
+ </customer_account_index>
170
+
171
+ <!--
172
+ Product view
173
+ -->
174
+
175
+ <catalog_product_view translate="label">
176
+ <label>Catalog Product View (Any)</label>
177
+ <!-- Mage_Catalog -->
178
+ <reference name="root">
179
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
180
+ </reference>
181
+ <reference name="head">
182
+ <action method="addJs"><script>varien/product.js</script></action>
183
+ <action method="addJs"><script>varien/configurable.js</script></action>
184
+
185
+ <action method="addItem"><type>js_css</type><name>calendar/calendar-win2k-1.css</name><params/><!--<if/><condition>can_load_calendar_js</condition>--></action>
186
+ <action method="addItem"><type>js</type><name>calendar/calendar.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
187
+ <action method="addItem"><type>js</type><name>calendar/calendar-setup.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
188
+ </reference>
189
+ <reference name="content">
190
+ <block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">
191
+ <!--
192
+ <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/summary.phtml</template></action>
193
+ <action method="addReviewSummaryTemplate"><type>short</type><template>review/helper/summary_short.phtml</template></action>
194
+ <action method="addReviewSummaryTemplate"><type>...</type><template>...</template></action>
195
+ -->
196
+ <block type="catalog/product_view_media" name="product.info.media" as="media" template="catalog/product/view/media.phtml"/>
197
+ <block type="core/text_list" name="alert.urls" as="alert_urls" translate="label">
198
+ <label>Alert Urls</label>
199
+ </block>
200
+
201
+ <action method="setTierPriceTemplate"><template>catalog/product/view/tierprices.phtml</template></action>
202
+
203
+ <block type="catalog/product_list_upsell" name="product.info.upsell" as="upsell_products" template="catalog/product/list/upsell.phtml">
204
+ <action method="setColumnCount"><columns>4</columns></action>
205
+ <action method="setItemLimit"><type>upsell</type><limit>4</limit></action>
206
+ </block>
207
+
208
+ <block type="catalog/product_view_additional" name="product.info.additional" as="product_additional_data" />
209
+ <block type="catalog/product_view_description" name="product.description" as="description" template="catalog/product/view/description.phtml">
210
+ <action method="addToParentGroup"><group>detailed_info</group></action>
211
+ </block>
212
+ <block type="catalog/product_view_attributes" name="product.attributes" as="additional" template="catalog/product/view/attributes.phtml">
213
+ <action method="addToParentGroup"><group>detailed_info</group></action>
214
+ </block>
215
+ <block type="catalog/product_view" name="product.info.addto" as="addto" template="catalog/product/view/addto.phtml"/>
216
+ <block type="catalog/product_view" name="product.info.addtocart" as="addtocart" template="catalog/product/view/addtocart.phtml"/>
217
+
218
+ <block type="core/text_list" name="product.info.extrahint" as="extrahint" translate="label">
219
+ <label>Product View Extra Hint</label>
220
+ </block>
221
+
222
+ <block type="catalog/product_view" name="product.info.options.wrapper" as="product_options_wrapper" template="catalog/product/view/options/wrapper.phtml" translate="label">
223
+ <label>Info Column Options Wrapper</label>
224
+ <block type="core/template" name="options_js" template="catalog/product/view/options/js.phtml"/>
225
+ <block type="catalog/product_view_options" name="product.info.options" as="product_options" template="catalog/product/view/options.phtml">
226
+ <action method="addOptionRenderer"><type>text</type><block>catalog/product_view_options_type_text</block><template>catalog/product/view/options/type/text.phtml</template></action>
227
+ <action method="addOptionRenderer"><type>file</type><block>catalog/product_view_options_type_file</block><template>catalog/product/view/options/type/file.phtml</template></action>
228
+ <action method="addOptionRenderer"><type>select</type><block>catalog/product_view_options_type_select</block><template>catalog/product/view/options/type/select.phtml</template></action>
229
+ <action method="addOptionRenderer"><type>date</type><block>catalog/product_view_options_type_date</block><template>catalog/product/view/options/type/date.phtml</template></action>
230
+ </block>
231
+ <block type="core/html_calendar" name="html_calendar" as="html_calendar" template="page/js/calendar.phtml"/>
232
+ </block>
233
+ <block type="catalog/product_view" name="product.info.options.wrapper.bottom" as="product_options_wrapper_bottom" template="catalog/product/view/options/wrapper/bottom.phtml" translate="label">
234
+ <label>Bottom Block Options Wrapper</label>
235
+ <action method="insert"><block>product.tierprices</block></action>
236
+ <block type="catalog/product_view" name="product.clone_prices" as="prices" template="catalog/product/view/price_clone.phtml"/>
237
+ <action method="append"><block>product.info.addtocart</block></action>
238
+ <action method="append"><block>product.info.addto</block></action>
239
+ </block>
240
+
241
+ <block type="core/template_facade" name="product.info.container1" as="container1">
242
+ <action method="setDataByKey"><key>alias_in_layout</key><value>container1</value></action>
243
+ <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
244
+ <action method="append"><block>product.info.options.wrapper</block></action>
245
+ <action method="append"><block>product.info.options.wrapper.bottom</block></action>
246
+ </block>
247
+ <block type="core/template_facade" name="product.info.container2" as="container2">
248
+ <action method="setDataByKey"><key>alias_in_layout</key><value>container2</value></action>
249
+ <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
250
+ <action method="append"><block>product.info.options.wrapper</block></action>
251
+ <action method="append"><block>product.info.options.wrapper.bottom</block></action>
252
+ </block>
253
+ <action method="unsetCallChild"><child>container1</child><call>ifEquals</call><if>0</if><key>alias_in_layout</key><key>options_container</key></action>
254
+ <action method="unsetCallChild"><child>container2</child><call>ifEquals</call><if>0</if><key>alias_in_layout</key><key>options_container</key></action>
255
+ </block>
256
+ </reference>
257
+ <reference name="right">
258
+ <block type="catalog/product_list_related" name="catalog.product.related" before="-" template="catalog/product/list/related.phtml"/>
259
+ </reference>
260
+ </catalog_product_view>
261
+
262
+ <!--
263
+ Additional block dependant on product type
264
+ -->
265
+ <PRODUCT_TYPE_simple translate="label" module="catalog">
266
+ <label>Catalog Product View (Simple)</label>
267
+ <reference name="product.info">
268
+ <block type="catalog/product_view_type_simple" name="product.info.simple" as="product_type_data" template="catalog/product/view/type/default.phtml">
269
+ <block type="core/text_list" name="product.info.simple.extra" as="product_type_data_extra" translate="label">
270
+ <label>Product Extra Info</label>
271
+ </block>
272
+ </block>
273
+ </reference>
274
+ </PRODUCT_TYPE_simple>
275
+ <PRODUCT_TYPE_configurable translate="label" module="catalog">
276
+ <label>Catalog Product View (Configurable)</label>
277
+ <reference name="product.info">
278
+ <block type="catalog/product_view_type_configurable" name="product.info.configurable" as="product_type_data" template="catalog/product/view/type/default.phtml">
279
+ <block type="core/text_list" name="product.info.configurable.extra" as="product_type_data_extra" translate="label">
280
+ <label>Product Extra Info</label>
281
+ </block>
282
+ </block>
283
+ </reference>
284
+ <reference name="product.info.options.wrapper">
285
+ <block type="catalog/product_view_type_configurable" name="product.info.options.configurable" as="options_configurable" before="-" template="catalog/product/view/type/options/configurable.phtml"/>
286
+ </reference>
287
+ </PRODUCT_TYPE_configurable>
288
+ <PRODUCT_TYPE_grouped translate="label" module="catalog">
289
+ <label>Catalog Product View (Grouped)</label>
290
+ <reference name="product.info">
291
+ <block type="catalog/product_view_type_grouped" name="product.info.grouped" as="product_type_data" template="catalog/product/view/type/grouped.phtml">
292
+ <block type="core/text_list" name="product.info.grouped.extra" as="product_type_data_extra" translate="label">
293
+ <label>Product Extra Info</label>
294
+ </block>
295
+ </block>
296
+ </reference>
297
+ </PRODUCT_TYPE_grouped>
298
+ <PRODUCT_TYPE_virtual translate="label" module="catalog">
299
+ <label>Catalog Product View (Virtual)</label>
300
+ <reference name="product.info">
301
+ <block type="catalog/product_view_type_virtual" name="product.info.virtual" as="product_type_data" template="catalog/product/view/type/default.phtml">
302
+ <block type="core/text_list" name="product.info.virtual.extra" as="product_type_data_extra" translate="label">
303
+ <label>Product Extra Info</label>
304
+ </block>
305
+ </block>
306
+ </reference>
307
+ </PRODUCT_TYPE_virtual>
308
+
309
+
310
+
311
+ <!--
312
+ Product send to friend
313
+ -->
314
+
315
+ <catalog_product_send translate="label">
316
+ <label>Catalog Product Email to a Friend</label>
317
+ <!-- Mage_Catalog -->
318
+ <reference name="root">
319
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
320
+ </reference>
321
+ <reference name="head">
322
+ <action method="addJs"><script>varien/product.js</script></action>
323
+ </reference>
324
+ <reference name="content">
325
+ <block type="catalog/product_send" name="product.send" template="catalog/product/send.phtml">
326
+ </block>
327
+ </reference>
328
+ </catalog_product_send>
329
+
330
+ <!--
331
+ Product additional images gallery popup
332
+ -->
333
+
334
+ <catalog_product_gallery translate="label">
335
+ <label>Catalog Product Image Gallery Popup</label>
336
+ <!-- Mage_Catalog -->
337
+ <reference name="root">
338
+ <action method="setTemplate"><template>page/popup.phtml</template></action>
339
+ </reference>
340
+ <reference name="content">
341
+ <block type="catalog/product_gallery" name="catalog_product_gallery" template="catalog/product/gallery.phtml"/>
342
+ </reference>
343
+ </catalog_product_gallery>
344
+
345
+ <!--
346
+ SEO Site Map
347
+ -->
348
+
349
+ <catalog_seo_sitemap translate="label">
350
+ <label>Catalog Seo Sitemap (Common)</label>
351
+ <remove name="right"/>
352
+ <remove name="left"/>
353
+
354
+ <reference name="root">
355
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
356
+ </reference>
357
+ <reference name="content">
358
+ <block type="page/template_container" name="seo.sitemap.container" template="catalog/seo/sitemap/container.phtml">
359
+ <block type="page/template_links" name="seo.sitemap.links" as="links" template="page/template/links.phtml"/>
360
+ <block type="page/html_pager" name="seo.sitemap.pager.top" as="pager_top" template="page/html/pager.phtml"/>
361
+ <block type="page/html_pager" name="seo.sitemap.pager.bottom" as="pager_bottom" template="page/html/pager.phtml"/>
362
+ </block>
363
+ </reference>
364
+ </catalog_seo_sitemap>
365
+
366
+ <catalog_seo_sitemap_category translate="label">
367
+ <label>Catalog Seo Sitemap (Category List)</label>
368
+ <reference name="head">
369
+ <action method="setTitle" translate="title" module="catalog"><title>Site Map</title></action>
370
+ </reference>
371
+ <update handle="catalog_seo_sitemap" />
372
+ <reference name="seo.sitemap.container">
373
+ <action method="setTitle" translate="title" module="catalog"><title>Categories</title></action>
374
+ <block type="catalog/seo_sitemap_category" name="seo.sitemap.sitemap" as="sitemap" after="pager_top" template="catalog/seo/sitemap.phtml">
375
+ <action method="bindPager"><pager>seo.sitemap.pager.top</pager></action>
376
+ <action method="bindPager"><pager>seo.sitemap.pager.bottom</pager></action>
377
+ <action method="setItemsTitle" translate="title" module="catalog"><title>categories</title></action>
378
+ </block>
379
+ </reference>
380
+ <reference name="seo.sitemap.links">
381
+ <action method="addLink" translate="label title" module="catalog"><label>Products Sitemap</label><url helper="catalog/map/getProductUrl"/><title>Products Sitemap</title></action>
382
+ </reference>
383
+ </catalog_seo_sitemap_category>
384
+
385
+ <catalog_seo_sitemap_category_tree translate="label">
386
+ <label>Catalog Seo Sitemap (Category Tree)</label>
387
+ <reference name="seo.sitemap.container">
388
+ <remove name="seo.sitemap.pager.top" />
389
+ <remove name="seo.sitemap.pager.bottom" />
390
+ <block type="catalog/seo_sitemap_tree_pager" name="seo.sitemap.tree.pager.top" as="pager_top" template="page/html/pager.phtml"/>
391
+ <block type="catalog/seo_sitemap_tree_pager" name="seo.sitemap.tree.pager.bottom" as="pager_bottom" template="page/html/pager.phtml"/>
392
+ <remove name="seo.sitemap.sitemap" />
393
+ <block type="catalog/seo_sitemap_tree_category" name="seo.sitemap.sitemap_tree" as="sitemap" after="pager_top" template="catalog/seo/tree.phtml">
394
+ <action method="bindPager"><pager>seo.sitemap.tree.pager.top</pager></action>
395
+ <action method="bindPager"><pager>seo.sitemap.tree.pager.bottom</pager></action>
396
+ </block>
397
+ </reference>
398
+ </catalog_seo_sitemap_category_tree>
399
+
400
+ <catalog_seo_sitemap_product translate="label">
401
+ <label>Catalog Seo Sitemap (Product List)</label>
402
+ <reference name="head">
403
+ <action method="setTitle" translate="title" module="catalog"><title>Site Map</title></action>
404
+ </reference>
405
+ <update handle="catalog_seo_sitemap" />
406
+ <reference name="seo.sitemap.container">
407
+ <action method="setTitle" translate="title" module="catalog"><title>Products</title></action>
408
+ <block type="catalog/seo_sitemap_product" name="seo.sitemap.sitemap" as="sitemap" after="pager_top" template="catalog/seo/sitemap.phtml">
409
+ <action method="bindPager"><pager>seo.sitemap.pager.top</pager></action>
410
+ <action method="bindPager"><pager>seo.sitemap.pager.bottom</pager></action>
411
+ <action method="setItemsTitle" translate="title" module="catalog"><title>products</title></action>
412
+ </block>
413
+ </reference>
414
+ <reference name="seo.sitemap.links">
415
+ <action method="addLink" translate="label title" module="catalog"><label>Categories Sitemap</label><url helper="catalog/map/getCategoryUrl"/><title>Categories Sitemap</title></action>
416
+ </reference>
417
+ </catalog_seo_sitemap_product>
418
+ </layout>
app/design/frontend/default/shoe_store/layout/catalog.xml~ ADDED
@@ -0,0 +1,418 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+
28
+ Supported layout update handles (action):
29
+ - catalog_product_gallery
30
+ - catalog_product_compare_index
31
+
32
+ Supported layout update handles (special):
33
+ - default
34
+ - catalog_category_default
35
+ - catalog_category_layered
36
+ - catalog_product_view
37
+
38
+ -->
39
+ <layout version="0.1.0">
40
+
41
+ <!--
42
+ Default layout, loads most of the pages
43
+ -->
44
+
45
+ <default>
46
+
47
+ <!-- Mage_Catalog -->
48
+ <reference name="left">
49
+ <block type="core/template" name="left.permanent.callout" template="callouts/left_col.phtml">
50
+ <action method="setImgSrc"><src>images/media/col_left_callout.jpg</src></action>
51
+ <action method="setImgAlt" translate="alt" module="catalog"><alt>Our customer service is available 24/7. Call us at (555) 555-0123.</alt></action>
52
+ <action method="setLinkUrl"><url>checkout/cart</url></action>
53
+ </block>
54
+ </reference>
55
+ <reference name="right">
56
+ <block type="catalog/product_compare_sidebar" after="cart_sidebar" name="catalog.compare.sidebar" template="catalog/product/compare/sidebar.phtml"/>
57
+ <block type="core/template" name="right.permanent.callout" template="callouts/right_col.phtml">
58
+ <action method="setImgSrc"><src>images/media/col_right_callout.jpg</src></action>
59
+ <action method="setImgAlt" translate="alt" module="catalog"><alt>Keep your eyes open for our special Back to School items and save A LOT!</alt></action>
60
+ </block>
61
+ </reference>
62
+ <reference name="footer_links">
63
+ <action method="addLink" translate="label title" module="catalog" ifconfig="catalog/seo/site_map"><label>Site Map</label><url helper="catalog/map/getCategoryUrl" /><title>Site Map</title></action>
64
+ </reference>
65
+ <block type="catalog/product_price_template" name="catalog_product_price_template" />
66
+ </default>
67
+
68
+
69
+ <!--
70
+ Category default layout
71
+ -->
72
+
73
+ <catalog_category_default translate="label">
74
+ <label>Catalog Category (Non-Anchor)</label>
75
+ <reference name="left">
76
+ <block type="catalog/navigation" name="catalog.leftnav" after="currency" template="catalog/navigation/left.phtml"/>
77
+ </reference>
78
+ <reference name="content">
79
+ <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
80
+ <block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
81
+ <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
82
+ <block type="page/html_pager" name="product_list_toolbar_pager"/>
83
+ <!-- The following code shows how to set your own pager increments -->
84
+ <!--
85
+ <action method="setDefaultListPerPage"><limit>4</limit></action>
86
+ <action method="setDefaultGridPerPage"><limit>9</limit></action>
87
+ <action method="addPagerLimit"><mode>list</mode><limit>2</limit></action>
88
+ <action method="addPagerLimit"><mode>list</mode><limit>4</limit></action>
89
+ <action method="addPagerLimit"><mode>list</mode><limit>6</limit></action>
90
+ <action method="addPagerLimit"><mode>list</mode><limit>8</limit></action>
91
+ <action method="addPagerLimit" translate="label"><mode>list</mode><limit>all</limit><label>All</label></action>
92
+ -->
93
+ </block>
94
+ <action method="addColumnCountLayoutDepend"><layout>empty</layout><count>6</count></action>
95
+ <action method="addColumnCountLayoutDepend"><layout>one_column</layout><count>5</count></action>
96
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_left</layout><count>4</count></action>
97
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_right</layout><count>4</count></action>
98
+ <action method="addColumnCountLayoutDepend"><layout>three_columns</layout><count>3</count></action>
99
+ <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
100
+ </block>
101
+ </block>
102
+ </reference>
103
+ </catalog_category_default>
104
+
105
+ <!--
106
+ Category layered navigation layout
107
+ -->
108
+
109
+ <catalog_category_layered translate="label">
110
+ <label>Catalog Category (Anchor)</label>
111
+ <reference name="left">
112
+ <block type="catalog/layer_view" name="catalog.leftnav" after="currency" template="catalog/layer/view.phtml"/>
113
+ </reference>
114
+ <reference name="content">
115
+ <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
116
+ <block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
117
+ <!-- <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/su.phtml</template></action> -->
118
+ <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
119
+ <block type="page/html_pager" name="product_list_toolbar_pager"/>
120
+ <!-- The following code shows how to set your own pager increments -->
121
+ <!--
122
+ <action method="setDefaultListPerPage"><limit>4</limit></action>
123
+ <action method="setDefaultGridPerPage"><limit>3</limit></action>
124
+ <action method="addPagerLimit"><mode>list</mode><limit>2</limit></action>
125
+ <action method="addPagerLimit"><mode>list</mode><limit>4</limit></action>
126
+ <action method="addPagerLimit"><mode>list</mode><limit>6</limit></action>
127
+ <action method="addPagerLimit"><mode>list</mode><limit>8</limit></action>
128
+ <action method="addPagerLimit" translate="label"><mode>list</mode><limit>all</limit><label>All</label></action>
129
+ <action method="addPagerLimit"><mode>grid</mode><limit>3</limit></action>
130
+ <action method="addPagerLimit"><mode>grid</mode><limit>6</limit></action>
131
+ <action method="addPagerLimit"><mode>grid</mode><limit>9</limit></action>
132
+ <action method="addPagerLimit" translate="label"><mode>grid</mode><limit>all</limit><label>All</label></action>
133
+ -->
134
+ </block>
135
+ <action method="addColumnCountLayoutDepend"><layout>empty</layout><count>6</count></action>
136
+ <action method="addColumnCountLayoutDepend"><layout>one_column</layout><count>5</count></action>
137
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_left</layout><count>4</count></action>
138
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_right</layout><count>4</count></action>
139
+ <action method="addColumnCountLayoutDepend"><layout>three_columns</layout><count>3</count></action>
140
+ <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
141
+ </block>
142
+ </block>
143
+ </reference>
144
+ </catalog_category_layered>
145
+
146
+ <!--
147
+ Compare products page
148
+ -->
149
+
150
+ <catalog_product_compare_index translate="label">
151
+ <label>Catalog Product Compare List</label>
152
+ <!-- Mage_Catalog -->
153
+ <reference name="root">
154
+ <action method="setTemplate"><template>page/popup.phtml</template></action>
155
+ </reference>
156
+ <reference name="head">
157
+ <action method="addJs"><script>scriptaculous/scriptaculous.js</script></action>
158
+ <action method="addJs"><script>varien/product.js</script></action>
159
+ </reference>
160
+ <reference name="content">
161
+ <block type="catalog/product_compare_list" name="catalog.compare.list" template="catalog/product/compare/list.phtml"/>
162
+ </reference>
163
+ </catalog_product_compare_index>
164
+
165
+ <customer_account_index>
166
+ <reference name="right">
167
+ <action method="unsetChild"><name>catalog.compare.sidebar</name></action>
168
+ </reference>
169
+ </customer_account_index>
170
+
171
+ <!--
172
+ Product view
173
+ -->
174
+
175
+ <catalog_product_view translate="label">
176
+ <label>Catalog Product View (Any)</label>
177
+ <!-- Mage_Catalog -->
178
+ <reference name="root">
179
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
180
+ </reference>
181
+ <reference name="head">
182
+ <action method="addJs"><script>varien/product.js</script></action>
183
+ <action method="addJs"><script>varien/configurable.js</script></action>
184
+
185
+ <action method="addItem"><type>js_css</type><name>calendar/calendar-win2k-1.css</name><params/><!--<if/><condition>can_load_calendar_js</condition>--></action>
186
+ <action method="addItem"><type>js</type><name>calendar/calendar.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
187
+ <action method="addItem"><type>js</type><name>calendar/calendar-setup.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
188
+ </reference>
189
+ <reference name="content">
190
+ <block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">
191
+ <!--
192
+ <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/summary.phtml</template></action>
193
+ <action method="addReviewSummaryTemplate"><type>short</type><template>review/helper/summary_short.phtml</template></action>
194
+ <action method="addReviewSummaryTemplate"><type>...</type><template>...</template></action>
195
+ -->
196
+ <block type="catalog/product_view_media" name="product.info.media" as="media" template="catalog/product/view/media.phtml"/>
197
+ <block type="core/text_list" name="alert.urls" as="alert_urls" translate="label">
198
+ <label>Alert Urls</label>
199
+ </block>
200
+
201
+ <action method="setTierPriceTemplate"><template>catalog/product/view/tierprices.phtml</template></action>
202
+
203
+ <block type="catalog/product_list_upsell" name="product.info.upsell" as="upsell_products" template="catalog/product/list/upsell.phtml">
204
+ <action method="setColumnCount"><columns>4</columns></action>
205
+ <action method="setItemLimit"><type>upsell</type><limit>4</limit></action>
206
+ </block>
207
+
208
+ <block type="catalog/product_view_additional" name="product.info.additional" as="product_additional_data" />
209
+ <block type="catalog/product_view_description" name="product.description" as="description" template="catalog/product/view/description.phtml">
210
+ <action method="addToParentGroup"><group>detailed_info</group></action>
211
+ </block>
212
+ <block type="catalog/product_view_attributes" name="product.attributes" as="additional" template="catalog/product/view/attributes.phtml">
213
+ <action method="addToParentGroup"><group>detailed_info</group></action>
214
+ </block>
215
+ <block type="catalog/product_view" name="product.info.addto" as="addto" template="catalog/product/view/addto.phtml"/>
216
+ <block type="catalog/product_view" name="product.info.addtocart" as="addtocart" template="catalog/product/view/addtocart.phtml"/>
217
+
218
+ <block type="core/text_list" name="product.info.extrahint" as="extrahint" translate="label">
219
+ <label>Product View Extra Hint</label>
220
+ </block>
221
+
222
+ <block type="catalog/product_view" name="product.info.options.wrapper" as="product_options_wrapper" template="catalog/product/view/options/wrapper.phtml" translate="label">
223
+ <label>Info Column Options Wrapper</label>
224
+ <block type="core/template" name="options_js" template="catalog/product/view/options/js.phtml"/>
225
+ <block type="catalog/product_view_options" name="product.info.options" as="product_options" template="catalog/product/view/options.phtml">
226
+ <action method="addOptionRenderer"><type>text</type><block>catalog/product_view_options_type_text</block><template>catalog/product/view/options/type/text.phtml</template></action>
227
+ <action method="addOptionRenderer"><type>file</type><block>catalog/product_view_options_type_file</block><template>catalog/product/view/options/type/file.phtml</template></action>
228
+ <action method="addOptionRenderer"><type>select</type><block>catalog/product_view_options_type_select</block><template>catalog/product/view/options/type/select.phtml</template></action>
229
+ <action method="addOptionRenderer"><type>date</type><block>catalog/product_view_options_type_date</block><template>catalog/product/view/options/type/date.phtml</template></action>
230
+ </block>
231
+ <block type="core/html_calendar" name="html_calendar" as="html_calendar" template="page/js/calendar.phtml"/>
232
+ </block>
233
+ <block type="catalog/product_view" name="product.info.options.wrapper.bottom" as="product_options_wrapper_bottom" template="catalog/product/view/options/wrapper/bottom.phtml" translate="label">
234
+ <label>Bottom Block Options Wrapper</label>
235
+ <action method="insert"><block>product.tierprices</block></action>
236
+ <block type="catalog/product_view" name="product.clone_prices" as="prices" template="catalog/product/view/price_clone.phtml"/>
237
+ <action method="append"><block>product.info.addtocart</block></action>
238
+ <action method="append"><block>product.info.addto</block></action>
239
+ </block>
240
+
241
+ <block type="core/template_facade" name="product.info.container1" as="container1">
242
+ <action method="setDataByKey"><key>alias_in_layout</key><value>container1</value></action>
243
+ <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
244
+ <action method="append"><block>product.info.options.wrapper</block></action>
245
+ <action method="append"><block>product.info.options.wrapper.bottom</block></action>
246
+ </block>
247
+ <block type="core/template_facade" name="product.info.container2" as="container2">
248
+ <action method="setDataByKey"><key>alias_in_layout</key><value>container2</value></action>
249
+ <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action>
250
+ <action method="append"><block>product.info.options.wrapper</block></action>
251
+ <action method="append"><block>product.info.options.wrapper.bottom</block></action>
252
+ </block>
253
+ <action method="unsetCallChild"><child>container1</child><call>ifEquals</call><if>0</if><key>alias_in_layout</key><key>options_container</key></action>
254
+ <action method="unsetCallChild"><child>container2</child><call>ifEquals</call><if>0</if><key>alias_in_layout</key><key>options_container</key></action>
255
+ </block>
256
+ </reference>
257
+ <reference name="right">
258
+ <block type="catalog/product_list_related" name="catalog.product.related" before="-" template="catalog/product/list/related.phtml"/>
259
+ </reference>
260
+ </catalog_product_view>
261
+
262
+ <!--
263
+ Additional block dependant on product type
264
+ -->
265
+ <PRODUCT_TYPE_simple translate="label" module="catalog">
266
+ <label>Catalog Product View (Simple)</label>
267
+ <reference name="product.info">
268
+ <block type="catalog/product_view_type_simple" name="product.info.simple" as="product_type_data" template="catalog/product/view/type/default.phtml">
269
+ <block type="core/text_list" name="product.info.simple.extra" as="product_type_data_extra" translate="label">
270
+ <label>Product Extra Info</label>
271
+ </block>
272
+ </block>
273
+ </reference>
274
+ </PRODUCT_TYPE_simple>
275
+ <PRODUCT_TYPE_configurable translate="label" module="catalog">
276
+ <label>Catalog Product View (Configurable)</label>
277
+ <reference name="product.info">
278
+ <block type="catalog/product_view_type_configurable" name="product.info.configurable" as="product_type_data" template="catalog/product/view/type/default.phtml">
279
+ <block type="core/text_list" name="product.info.configurable.extra" as="product_type_data_extra" translate="label">
280
+ <label>Product Extra Info</label>
281
+ </block>
282
+ </block>
283
+ </reference>
284
+ <reference name="product.info.options.wrapper">
285
+ <block type="catalog/product_view_type_configurable" name="product.info.options.configurable" as="options_configurable" before="-" template="catalog/product/view/type/options/configurable.phtml"/>
286
+ </reference>
287
+ </PRODUCT_TYPE_configurable>
288
+ <PRODUCT_TYPE_grouped translate="label" module="catalog">
289
+ <label>Catalog Product View (Grouped)</label>
290
+ <reference name="product.info">
291
+ <block type="catalog/product_view_type_grouped" name="product.info.grouped" as="product_type_data" template="catalog/product/view/type/grouped.phtml">
292
+ <block type="core/text_list" name="product.info.grouped.extra" as="product_type_data_extra" translate="label">
293
+ <label>Product Extra Info</label>
294
+ </block>
295
+ </block>
296
+ </reference>
297
+ </PRODUCT_TYPE_grouped>
298
+ <PRODUCT_TYPE_virtual translate="label" module="catalog">
299
+ <label>Catalog Product View (Virtual)</label>
300
+ <reference name="product.info">
301
+ <block type="catalog/product_view_type_virtual" name="product.info.virtual" as="product_type_data" template="catalog/product/view/type/default.phtml">
302
+ <block type="core/text_list" name="product.info.virtual.extra" as="product_type_data_extra" translate="label">
303
+ <label>Product Extra Info</label>
304
+ </block>
305
+ </block>
306
+ </reference>
307
+ </PRODUCT_TYPE_virtual>
308
+
309
+
310
+
311
+ <!--
312
+ Product send to friend
313
+ -->
314
+
315
+ <catalog_product_send translate="label">
316
+ <label>Catalog Product Email to a Friend</label>
317
+ <!-- Mage_Catalog -->
318
+ <reference name="root">
319
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
320
+ </reference>
321
+ <reference name="head">
322
+ <action method="addJs"><script>varien/product.js</script></action>
323
+ </reference>
324
+ <reference name="content">
325
+ <block type="catalog/product_send" name="product.send" template="catalog/product/send.phtml">
326
+ </block>
327
+ </reference>
328
+ </catalog_product_send>
329
+
330
+ <!--
331
+ Product additional images gallery popup
332
+ -->
333
+
334
+ <catalog_product_gallery translate="label">
335
+ <label>Catalog Product Image Gallery Popup</label>
336
+ <!-- Mage_Catalog -->
337
+ <reference name="root">
338
+ <action method="setTemplate"><template>page/popup.phtml</template></action>
339
+ </reference>
340
+ <reference name="content">
341
+ <block type="catalog/product_gallery" name="catalog_product_gallery" template="catalog/product/gallery.phtml"/>
342
+ </reference>
343
+ </catalog_product_gallery>
344
+
345
+ <!--
346
+ SEO Site Map
347
+ -->
348
+
349
+ <catalog_seo_sitemap translate="label">
350
+ <label>Catalog Seo Sitemap (Common)</label>
351
+ <remove name="right"/>
352
+ <remove name="left"/>
353
+
354
+ <reference name="root">
355
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
356
+ </reference>
357
+ <reference name="content">
358
+ <block type="page/template_container" name="seo.sitemap.container" template="catalog/seo/sitemap/container.phtml">
359
+ <block type="page/template_links" name="seo.sitemap.links" as="links" template="page/template/links.phtml"/>
360
+ <block type="page/html_pager" name="seo.sitemap.pager.top" as="pager_top" template="page/html/pager.phtml"/>
361
+ <block type="page/html_pager" name="seo.sitemap.pager.bottom" as="pager_bottom" template="page/html/pager.phtml"/>
362
+ </block>
363
+ </reference>
364
+ </catalog_seo_sitemap>
365
+
366
+ <catalog_seo_sitemap_category translate="label">
367
+ <label>Catalog Seo Sitemap (Category List)</label>
368
+ <reference name="head">
369
+ <action method="setTitle" translate="title" module="catalog"><title>Site Map</title></action>
370
+ </reference>
371
+ <update handle="catalog_seo_sitemap" />
372
+ <reference name="seo.sitemap.container">
373
+ <action method="setTitle" translate="title" module="catalog"><title>Categories</title></action>
374
+ <block type="catalog/seo_sitemap_category" name="seo.sitemap.sitemap" as="sitemap" after="pager_top" template="catalog/seo/sitemap.phtml">
375
+ <action method="bindPager"><pager>seo.sitemap.pager.top</pager></action>
376
+ <action method="bindPager"><pager>seo.sitemap.pager.bottom</pager></action>
377
+ <action method="setItemsTitle" translate="title" module="catalog"><title>categories</title></action>
378
+ </block>
379
+ </reference>
380
+ <reference name="seo.sitemap.links">
381
+ <action method="addLink" translate="label title" module="catalog"><label>Products Sitemap</label><url helper="catalog/map/getProductUrl"/><title>Products Sitemap</title></action>
382
+ </reference>
383
+ </catalog_seo_sitemap_category>
384
+
385
+ <catalog_seo_sitemap_category_tree translate="label">
386
+ <label>Catalog Seo Sitemap (Category Tree)</label>
387
+ <reference name="seo.sitemap.container">
388
+ <remove name="seo.sitemap.pager.top" />
389
+ <remove name="seo.sitemap.pager.bottom" />
390
+ <block type="catalog/seo_sitemap_tree_pager" name="seo.sitemap.tree.pager.top" as="pager_top" template="page/html/pager.phtml"/>
391
+ <block type="catalog/seo_sitemap_tree_pager" name="seo.sitemap.tree.pager.bottom" as="pager_bottom" template="page/html/pager.phtml"/>
392
+ <remove name="seo.sitemap.sitemap" />
393
+ <block type="catalog/seo_sitemap_tree_category" name="seo.sitemap.sitemap_tree" as="sitemap" after="pager_top" template="catalog/seo/tree.phtml">
394
+ <action method="bindPager"><pager>seo.sitemap.tree.pager.top</pager></action>
395
+ <action method="bindPager"><pager>seo.sitemap.tree.pager.bottom</pager></action>
396
+ </block>
397
+ </reference>
398
+ </catalog_seo_sitemap_category_tree>
399
+
400
+ <catalog_seo_sitemap_product translate="label">
401
+ <label>Catalog Seo Sitemap (Product List)</label>
402
+ <reference name="head">
403
+ <action method="setTitle" translate="title" module="catalog"><title>Site Map</title></action>
404
+ </reference>
405
+ <update handle="catalog_seo_sitemap" />
406
+ <reference name="seo.sitemap.container">
407
+ <action method="setTitle" translate="title" module="catalog"><title>Products</title></action>
408
+ <block type="catalog/seo_sitemap_product" name="seo.sitemap.sitemap" as="sitemap" after="pager_top" template="catalog/seo/sitemap.phtml">
409
+ <action method="bindPager"><pager>seo.sitemap.pager.top</pager></action>
410
+ <action method="bindPager"><pager>seo.sitemap.pager.bottom</pager></action>
411
+ <action method="setItemsTitle" translate="title" module="catalog"><title>products</title></action>
412
+ </block>
413
+ </reference>
414
+ <reference name="seo.sitemap.links">
415
+ <action method="addLink" translate="label title" module="catalog"><label>Categories Sitemap</label><url helper="catalog/map/getCategoryUrl"/><title>Categories Sitemap</title></action>
416
+ </reference>
417
+ </catalog_seo_sitemap_product>
418
+ </layout>
app/design/frontend/default/shoe_store/layout/catalogsearch.xml ADDED
@@ -0,0 +1,142 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+
28
+ -->
29
+ <layout version="0.1.0">
30
+
31
+ <default>
32
+ <reference name="header">
33
+ <block type="core/template" name="top.search" as="topSearch" template="catalogsearch/form.mini.phtml"/>
34
+ </reference>
35
+ <reference name="footer_links">
36
+ <action method="addLink" translate="label title" module="catalogsearch" ifconfig="catalog/seo/search_terms">
37
+ <label>Search Terms</label>
38
+ <url helper="catalogsearch/getSearchTermUrl" />
39
+ <title>Search Terms</title>
40
+ </action>
41
+ <action method="addLink" translate="label title" module="catalogsearch">
42
+ <label>Advanced Search</label>
43
+ <url helper="catalogsearch/getAdvancedSearchUrl" />
44
+ <title>Advanced Search</title>
45
+ </action>
46
+ </reference>
47
+ </default>
48
+
49
+ <catalogsearch_result_index translate="label">
50
+ <label>Quick Search Form</label>
51
+ <reference name="root">
52
+ <action method="setTemplate"><template>page/2columns-left.phtml</template></action>
53
+ </reference>
54
+ <reference name="left">
55
+ <block type="catalogsearch/layer" name="catalogsearch.leftnav" after="currency" template="catalog/layer/view.phtml"/>
56
+ </reference>
57
+ <reference name="content">
58
+ <block type="catalogsearch/result" name="search.result" template="catalogsearch/result.phtml">
59
+ <block type="catalog/product_list" name="search_result_list" template="catalog/product/list.phtml">
60
+ <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
61
+ <block type="page/html_pager" name="product_list_toolbar_pager"/>
62
+ </block>
63
+ <action method="addColumnCountLayoutDepend"><layout>empty</layout><count>6</count></action>
64
+ <action method="addColumnCountLayoutDepend"><layout>one_column</layout><count>5</count></action>
65
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_left</layout><count>4</count></action>
66
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_right</layout><count>4</count></action>
67
+ <action method="addColumnCountLayoutDepend"><layout>three_columns</layout><count>3</count></action>
68
+ <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
69
+ </block>
70
+ <action method="setListOrders"/>
71
+ <action method="setListModes"/>
72
+ <action method="setListCollection"/>
73
+ </block>
74
+ </reference>
75
+ </catalogsearch_result_index>
76
+
77
+ <catalogsearch_advanced_index translate="label">
78
+ <label>Advanced Search Form</label>
79
+ <!-- Mage_Catalogsearch -->
80
+ <reference name="root">
81
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
82
+ </reference>
83
+ <reference name="head">
84
+ <action method="setTitle" translate="title" module="catalogsearch"><title>Advanced Search</title></action>
85
+ <action method="addItem"><type>js_css</type><name>calendar/calendar-win2k-1.css</name><params/><!--<if/><condition>can_load_calendar_js</condition>--></action>
86
+ <action method="addItem"><type>js</type><name>calendar/calendar.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
87
+ <action method="addItem"><type>js</type><name>calendar/calendar-setup.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action>
88
+ </reference>
89
+ <reference name="content">
90
+ <block type="catalogsearch/advanced_form" name="catalogsearch_advanced_form" template="catalogsearch/advanced/form.phtml"/>
91
+ <block type="core/html_calendar" name="html_calendar" as="html_calendar" template="page/js/calendar.phtml"/>
92
+ </reference>
93
+ </catalogsearch_advanced_index>
94
+
95
+ <!--
96
+ Advanced search results
97
+ -->
98
+
99
+ <catalogsearch_advanced_result translate="label">
100
+ <label>Advanced Search Result</label>
101
+ <update handle="page_two_columns_right" />
102
+ <!-- Mage_Catalogsearch -->
103
+ <reference name="root">
104
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
105
+ </reference>
106
+ <reference name="content">
107
+ <block type="catalogsearch/advanced_result" name="catalogsearch_advanced_result" template="catalogsearch/advanced/result.phtml">
108
+ <block type="catalog/product_list" name="search_result_list" template="catalog/product/list.phtml">
109
+ <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
110
+ <block type="page/html_pager" name="product_list_toolbar_pager"/>
111
+ </block>
112
+ <action method="addColumnCountLayoutDepend"><layout>empty</layout><count>6</count></action>
113
+ <action method="addColumnCountLayoutDepend"><layout>one_column</layout><count>5</count></action>
114
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_left</layout><count>4</count></action>
115
+ <action method="addColumnCountLayoutDepend"><layout>two_columns_right</layout><count>4</count></action>
116
+ <action method="addColumnCountLayoutDepend"><layout>three_columns</layout><count>3</count></action>
117
+ <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
118
+ </block>
119
+ <action method="setListOrders"/>
120
+ <action method="setListModes"/>
121
+ <action method="setListCollection"/>
122
+ </block>
123
+ </reference>
124
+ </catalogsearch_advanced_result>
125
+
126
+ <catalogsearch_term_popular translate="label">
127
+ <label>Popular Search Terms</label>
128
+ <remove name="right"/>
129
+ <remove name="left"/>
130
+
131
+ <reference name="head">
132
+ <action method="setTitle" translate="title" module="catalogsearch"><title>Search Terms</title></action>
133
+ </reference>
134
+ <reference name="root">
135
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
136
+ </reference>
137
+ <reference name="content">
138
+ <block type="catalogsearch/term" name="seo.searchterm" template="catalogsearch/term.phtml"/>
139
+ </reference>
140
+ </catalogsearch_term_popular>
141
+
142
+ </layout>
app/design/frontend/default/shoe_store/layout/checkout.xml ADDED
@@ -0,0 +1,436 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+
28
+ -->
29
+ <layout version="0.1.0">
30
+
31
+ <!--
32
+ Default layout, loads most of the pages
33
+ -->
34
+
35
+ <default>
36
+
37
+ <!-- Mage_Checkout -->
38
+ <reference name="top.links">
39
+ <block type="checkout/links" name="checkout_cart_link">
40
+ <action method="addCartLink"></action>
41
+ <action method="addCheckoutLink"></action>
42
+ </block>
43
+ </reference>
44
+ <reference name="right">
45
+ <block type="checkout/cart_sidebar" name="cart_sidebar" template="checkout/cart/sidebar.phtml" before="-">
46
+ <action method="addItemRender"><type>simple</type><block>checkout/cart_item_renderer</block><template>checkout/cart/sidebar/default.phtml</template></action>
47
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/cart/sidebar/default.phtml</template></action>
48
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/cart/sidebar/default.phtml</template></action>
49
+ <block type="core/text_list" name="cart_sidebar.extra_actions" as="extra_actions" translate="label" module="checkout">
50
+ <label>Shopping Cart Sidebar Extra Actions</label>
51
+ </block>
52
+ </block>
53
+ </reference>
54
+ </default>
55
+
56
+ <checkout_cart_index translate="label">
57
+ <label>Shopping Cart</label>
58
+ <remove name="right"/>
59
+ <remove name="left"/>
60
+ <!-- Mage_Checkout -->
61
+ <reference name="root">
62
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
63
+ </reference>
64
+ <reference name="content">
65
+ <block type="checkout/cart" name="checkout.cart">
66
+ <action method="setCartTemplate"><value>checkout/cart.phtml</value></action>
67
+ <action method="setEmptyTemplate"><value>checkout/cart/noItems.phtml</value></action>
68
+ <action method="chooseTemplate"/>
69
+ <action method="addItemRender"><type>simple</type><block>checkout/cart_item_renderer</block><template>checkout/cart/item/default.phtml</template></action>
70
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/cart/item/default.phtml</template></action>
71
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/cart/item/default.phtml</template></action>
72
+
73
+ <block type="core/text_list" name="checkout.cart.top_methods" as="top_methods" translate="label">
74
+ <label>Payment Methods Before Checkout Button</label>
75
+ <block type="checkout/onepage_link" name="checkout.cart.methods.onepage" template="checkout/onepage/link.phtml"/>
76
+ </block>
77
+
78
+ <block type="page/html_wrapper" name="checkout.cart.form.before" as="form_before" translate="label">
79
+ <label>Shopping Cart Form Before</label>
80
+ </block>
81
+
82
+ <block type="core/text_list" name="checkout.cart.methods" as="methods" translate="label">
83
+ <label>Payment Methods After Checkout Button</label>
84
+ <block type="checkout/onepage_link" name="checkout.cart.methods.onepage" template="checkout/onepage/link.phtml"/>
85
+ <block type="checkout/multishipping_link" name="checkout.cart.methods.multishipping" template="checkout/multishipping/link.phtml"/>
86
+ </block>
87
+
88
+ <block type="checkout/cart_coupon" name="checkout.cart.coupon" as="coupon" template="checkout/cart/coupon.phtml"/>
89
+ <block type="checkout/cart_shipping" name="checkout.cart.shipping" as="shipping" template="checkout/cart/shipping.phtml"/>
90
+ <block type="checkout/cart_crosssell" name="checkout.cart.crosssell" as="crosssell" template="checkout/cart/crosssell.phtml"/>
91
+
92
+ <block type="checkout/cart_totals" name="checkout.cart.totals" as="totals" template="checkout/cart/totals.phtml"/>
93
+ </block>
94
+ </reference>
95
+ <block type="core/text_list" name="additional.product.info" translate="label">
96
+ <label>Additional Product Info</label>
97
+ </block>
98
+ </checkout_cart_index>
99
+
100
+ <checkout_cart_configure translate="label">
101
+ <label>Configure Cart Item</label>
102
+ <update handle="catalog_product_view"/>
103
+ <reference name="product.info">
104
+ <block type="checkout/cart_item_configure" name="checkout.cart.item.configure.block"></block>
105
+ </reference>
106
+ </checkout_cart_configure>
107
+
108
+ <!--
109
+ Multi address shipping checkout main layout,
110
+ will be rendered on all checkout pages
111
+ -->
112
+
113
+ <checkout_multishipping translate="label">
114
+ <label>Multishipping Checkout</label>
115
+ <!-- Mage_Checkout -->
116
+ <remove name="right"/>
117
+ <remove name="left"/>
118
+
119
+ <reference name="root">
120
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
121
+ </reference>
122
+ <reference name="content">
123
+ <block type="checkout/multishipping_state" name="checkout_state" template="checkout/multishipping/state.phtml"/>
124
+ </reference>
125
+ </checkout_multishipping>
126
+
127
+ <checkout_multishipping_login>
128
+ <update handle="customer_account_login"/>
129
+ </checkout_multishipping_login>
130
+
131
+ <checkout_multishipping_register>
132
+ <update handle="customer_account_create"/>
133
+ </checkout_multishipping_register>
134
+
135
+ <!--
136
+ Multi address shipping checkout selection of address per item page
137
+ -->
138
+
139
+ <checkout_multishipping_address_select translate="label">
140
+ <label>Multishipping Checkout Shipping Address Selection</label>
141
+ <update handle="checkout_multishipping"/>
142
+ <!-- Mage_Checkout -->
143
+ <reference name="content">
144
+ <block type="checkout/multishipping_address_select" name="checkout_address_select" template="checkout/multishipping/address/select.phtml"/>
145
+ </reference>
146
+ </checkout_multishipping_address_select>
147
+
148
+ <checkout_multishipping_address_selectbilling translate="label">
149
+ <label>Multishipping Checkout Billing Address Selection</label>
150
+ <update handle="checkout_multishipping"/>
151
+ <!-- Mage_Checkout -->
152
+ <reference name="content">
153
+ <block type="checkout/multishipping_address_select" name="checkout_address_select" template="checkout/multishipping/address/select.phtml"/>
154
+ </reference>
155
+ </checkout_multishipping_address_selectbilling>
156
+
157
+
158
+ <checkout_multishipping_address_newshipping translate="label">
159
+ <label>Multishipping Checkout Shipping Address Creation</label>
160
+ <update handle="checkout_multishipping"/>
161
+ <update handle="checkout_multishipping_customer_address"/>
162
+ </checkout_multishipping_address_newshipping>
163
+
164
+ <checkout_multishipping_address_newbilling translate="label">
165
+ <label>Multishipping Checkout Billing Address Creation</label>
166
+ <update handle="checkout_multishipping"/>
167
+ <update handle="checkout_multishipping_customer_address"/>
168
+ </checkout_multishipping_address_newbilling>
169
+
170
+ <checkout_multishipping_address_editshipping translate="label">
171
+ <label>Multishipping Checkout Shipping Address Edit Form</label>
172
+ <update handle="checkout_multishipping"/>
173
+ <update handle="checkout_multishipping_customer_address"/>
174
+ </checkout_multishipping_address_editshipping>
175
+
176
+ <checkout_multishipping_address_editaddress>
177
+ <update handle="checkout_multishipping"/>
178
+ <update handle="checkout_multishipping_customer_address"/>
179
+ </checkout_multishipping_address_editaddress>
180
+
181
+ <checkout_multishipping_address_editbilling translate="label">
182
+ <label>Multishipping Checkout Billing Address Edit Form</label>
183
+ <update handle="checkout_multishipping"/>
184
+ <update handle="checkout_multishipping_customer_address"/>
185
+ </checkout_multishipping_address_editbilling>
186
+
187
+ <checkout_multishipping_customer_address translate="label">
188
+ <label>Multishipping Checkout Customer Address Edit Form</label>
189
+ <reference name="content">
190
+ <block type="customer/address_edit" name="customer_address_edit" template="customer/address/edit.phtml"/>
191
+ </reference>
192
+ </checkout_multishipping_customer_address>
193
+
194
+ <!--
195
+ Multi address shipping checkout address page
196
+ -->
197
+
198
+ <checkout_multishipping_addresses translate="label">
199
+ <label>Multishipping Checkout Address (Any) Form</label>
200
+ <update handle="checkout_multishipping"/>
201
+ <!-- Mage_Checkout -->
202
+ <reference name="content">
203
+ <block type="checkout/multishipping_addresses" name="checkout_addresses" template="checkout/multishipping/addresses.phtml">
204
+ <action method="addItemRender"><type>default</type><block>checkout/cart_item_renderer</block><template>checkout/multishipping/item/default.phtml</template></action>
205
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/multishipping/item/default.phtml</template></action>
206
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/multishipping/item/default.phtml</template></action>
207
+ </block>
208
+ </reference>
209
+ </checkout_multishipping_addresses>
210
+
211
+ <!--
212
+ Multi address shipping checkout shipping information
213
+ -->
214
+
215
+ <checkout_multishipping_shipping translate="label">
216
+ <label>Multishipping Checkout Shipping Information Step</label>
217
+ <update handle="checkout_multishipping"/>
218
+ <!-- Mage_Checkout -->
219
+ <reference name="content">
220
+ <block type="checkout/multishipping_shipping" name="checkout_shipping" template="checkout/multishipping/shipping.phtml">
221
+ <action method="addItemRender"><type>default</type><block>checkout/cart_item_renderer</block><template>checkout/multishipping/item/default.phtml</template></action>
222
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/multishipping/item/default.phtml</template></action>
223
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/multishipping/item/default.phtml</template></action>
224
+
225
+ <block type="checkout/multishipping_billing_items" name="checkout_billing_items" template="checkout/multishipping/billing/items.phtml">
226
+ <action method="addItemRender"><type>default</type><block>checkout/cart_item_renderer</block><template>checkout/multishipping/item/default.phtml</template></action>
227
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/multishipping/item/default.phtml</template></action>
228
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/multishipping/item/default.phtml</template></action>
229
+ </block>
230
+ </block>
231
+ </reference>
232
+ </checkout_multishipping_shipping>
233
+
234
+ <!--
235
+ Multi address shipping checkout billing information
236
+ -->
237
+
238
+ <checkout_multishipping_billing translate="label">
239
+ <label>Multishipping Checkout Billing Information Step</label>
240
+ <update handle="checkout_multishipping"/>
241
+ <!-- Mage_Checkout -->
242
+ <reference name="content">
243
+ <block type="checkout/multishipping_billing" name="checkout_billing" template="checkout/multishipping/billing.phtml">
244
+ <action method="setMethodFormTemplate"><method>purchaseorder</method><template>payment/form/purchaseorder.phtml</template></action>
245
+
246
+ <!--<block type="checkout/multishipping_billing_items" name="checkout_billing_items" template="checkout/multishipping/billing/items.phtml">
247
+ <action method="addItemRender"><type>default</type><block>checkout/cart_item_renderer</block><template>checkout/multishipping/item/default.phtml</template></action>
248
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/multishipping/item/default.phtml</template></action>
249
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/multishipping/item/default.phtml</template></action>
250
+ </block>-->
251
+
252
+ </block>
253
+ </reference>
254
+ </checkout_multishipping_billing>
255
+
256
+ <!--
257
+ Multi address shipping checkout overview
258
+ -->
259
+
260
+ <checkout_multishipping_overview translate="label">
261
+ <label>Multishipping Checkout Overview</label>
262
+ <update handle="checkout_multishipping"/>
263
+ <!-- Mage_Checkout -->
264
+ <reference name="content">
265
+ <block type="checkout/multishipping_overview" name="checkout_overview" template="checkout/multishipping/overview.phtml">
266
+ <action method="addItemRender"><type>default</type><block>checkout/cart_item_renderer</block><template>checkout/multishipping/item/default.phtml</template></action>
267
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/multishipping/item/default.phtml</template></action>
268
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/multishipping/item/default.phtml</template></action>
269
+ <action method="addRowItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/multishipping/overview/item.phtml</template></action>
270
+ <action method="addRowItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/multishipping/overview/item.phtml</template></action>
271
+ <block type="checkout/multishipping_payment_info" name="payment_info">
272
+ <action method="setInfoTemplate"><method></method><template></template></action>
273
+ </block>
274
+ <block type="checkout/agreements" name="checkout.multishipping.agreements" as="agreements" template="checkout/multishipping/agreements.phtml"/>
275
+ <block type="checkout/cart_totals" name="totals" />
276
+ <block type="core/text_list" name="checkout.multishipping.overview.items.after" as="items_after" translate="label">
277
+ <label>Overview Items After</label>
278
+ </block>
279
+ </block>
280
+ </reference>
281
+ </checkout_multishipping_overview>
282
+
283
+ <!--
284
+ Multi address shipping checkout success
285
+ -->
286
+
287
+ <checkout_multishipping_success translate="label">
288
+ <label>Multishipping Checkout Success</label>
289
+ <update handle="checkout_multishipping"/>
290
+ <!-- Mage_Checkout -->
291
+ <reference name="content">
292
+ <block type="checkout/multishipping_success" name="checkout_success" template="checkout/multishipping/success.phtml"/>
293
+ </reference>
294
+ </checkout_multishipping_success>
295
+
296
+ <!--
297
+ One page checkout main layout
298
+ -->
299
+
300
+ <checkout_onepage_index translate="label">
301
+ <label>One Page Checkout</label>
302
+ <!-- Mage_Checkout -->
303
+ <remove name="left"/>
304
+
305
+ <reference name="root">
306
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
307
+ </reference>
308
+ <reference name="right">
309
+ <action method="unsetChildren"></action>
310
+ <block type="page/html_wrapper" name="checkout.progress.wrapper" translate="label">
311
+ <label>Checkout Progress Wrapper</label>
312
+ <action method="setElementId"><value>checkout-progress-wrapper</value></action>
313
+ <block type="checkout/onepage_progress" name="checkout.progress" before="-" template="checkout/onepage/progress.phtml"/>
314
+ </block>
315
+ </reference>
316
+ <reference name="content">
317
+ <block type="checkout/onepage" name="checkout.onepage" template="checkout/onepage.phtml">
318
+ <block type="checkout/onepage_login" name="checkout.onepage.login" as="login" template="checkout/onepage/login.phtml">
319
+ <block type="page/html_wrapper" name="checkout.onepage.login.before" as="login_before" translate="label">
320
+ <label>Login/Registration Before</label>
321
+ <action method="setMayBeInvisible"><value>1</value></action>
322
+ </block>
323
+ </block>
324
+ <block type="checkout/onepage_billing" name="checkout.onepage.billing" as="billing" template="checkout/onepage/billing.phtml"/>
325
+ <block type="checkout/onepage_shipping" name="checkout.onepage.shipping" as="shipping" template="checkout/onepage/shipping.phtml"/>
326
+ <block type="checkout/onepage_shipping_method" name="checkout.onepage.shipping_method" as="shipping_method" template="checkout/onepage/shipping_method.phtml">
327
+ <block type="checkout/onepage_shipping_method_available" name="checkout.onepage.shipping_method.available" as="available" template="checkout/onepage/shipping_method/available.phtml"/>
328
+ <block type="checkout/onepage_shipping_method_additional" name="checkout.onepage.shipping_method.additional" as="additional" template="checkout/onepage/shipping_method/additional.phtml"/>
329
+ </block>
330
+ <block type="checkout/onepage_payment" name="checkout.onepage.payment" as="payment" template="checkout/onepage/payment.phtml">
331
+ <block type="checkout/onepage_payment_methods" name="checkout.payment.methods" as="methods" template="checkout/onepage/payment/methods.phtml">
332
+ <action method="setMethodFormTemplate"><method>purchaseorder</method><template>payment/form/purchaseorder.phtml</template></action>
333
+ </block>
334
+ </block>
335
+ <block type="checkout/onepage_review" name="checkout.onepage.review" as="review" template="checkout/onepage/review.phtml"/>
336
+ </block>
337
+ </reference>
338
+ </checkout_onepage_index>
339
+
340
+ <!--
341
+ One page checkout progress block
342
+ -->
343
+
344
+ <checkout_onepage_progress>
345
+ <!-- Mage_Checkout -->
346
+ <remove name="right"/>
347
+ <remove name="left"/>
348
+
349
+ <block type="checkout/onepage_progress" name="root" output="toHtml" template="checkout/onepage/progress.phtml">
350
+ <block type="checkout/onepage_payment_info" name="payment_info">
351
+ <action method="setInfoTemplate"><method></method><template></template></action>
352
+ </block>
353
+ </block>
354
+ </checkout_onepage_progress>
355
+
356
+ <!--
357
+ One page checkout payment methods block
358
+ -->
359
+ <checkout_onepage_paymentmethod>
360
+ <remove name="right"/>
361
+ <remove name="left"/>
362
+
363
+ <block type="checkout/onepage_payment_methods" name="root" output="toHtml" template="checkout/onepage/payment/methods.phtml">
364
+ <action method="setMethodFormTemplate"><method>purchaseorder</method><template>payment/form/purchaseorder.phtml</template></action>
365
+ </block>
366
+ </checkout_onepage_paymentmethod>
367
+
368
+
369
+ <!--
370
+ One page checkout shipping methods block
371
+ -->
372
+
373
+ <checkout_onepage_shippingmethod>
374
+ <!-- Mage_Checkout -->
375
+ <remove name="right"/>
376
+ <remove name="left"/>
377
+
378
+ <block type="checkout/onepage_shipping_method_available" name="root" output="toHtml" template="checkout/onepage/shipping_method/available.phtml"/>
379
+ </checkout_onepage_shippingmethod>
380
+
381
+ <checkout_onepage_additional>
382
+ <!-- Mage_Checkout -->
383
+ <remove name="right"/>
384
+ <remove name="left"/>
385
+
386
+ <block type="checkout/onepage_shipping_method_additional" name="root" output="toHtml" template="checkout/onepage/shipping_method/additional.phtml">
387
+ <action method="setDontDisplayContainer"><param>1</param></action>
388
+ </block>
389
+ </checkout_onepage_additional>
390
+
391
+ <!--
392
+ One page checkout order review block
393
+ -->
394
+
395
+ <checkout_onepage_review translate="label">
396
+ <label>One Page Checkout Overview</label>
397
+ <!-- Mage_Checkout -->
398
+ <remove name="right"/>
399
+ <remove name="left"/>
400
+
401
+ <block type="checkout/onepage_review_info" name="root" output="toHtml" template="checkout/onepage/review/info.phtml">
402
+ <action method="addItemRender"><type>default</type><block>checkout/cart_item_renderer</block><template>checkout/onepage/review/item.phtml</template></action>
403
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/onepage/review/item.phtml</template></action>
404
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/onepage/review/item.phtml</template></action>
405
+ <block type="checkout/cart_totals" name="checkout.onepage.review.info.totals" as="totals" template="checkout/onepage/review/totals.phtml"/>
406
+ <block type="core/text_list" name="checkout.onepage.review.info.items.before" as="items_before" translate="label">
407
+ <label>Items Before</label>
408
+ </block>
409
+ <block type="core/text_list" name="checkout.onepage.review.info.items.after" as="items_after" translate="label">
410
+ <label>Items After</label>
411
+ </block>
412
+ <block type="checkout/agreements" name="checkout.onepage.agreements" as="agreements" template="checkout/onepage/agreements.phtml"/>
413
+ <block type="core/template" name="checkout.onepage.review.button" as="button" template="checkout/onepage/review/button.phtml"/>
414
+ </block>
415
+ </checkout_onepage_review>
416
+
417
+ <checkout_onepage_success translate="label">
418
+ <label>One Page Checkout Success</label>
419
+ <reference name="root">
420
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
421
+ </reference>
422
+ <reference name="content">
423
+ <block type="checkout/onepage_success" name="checkout.success" template="checkout/success.phtml"/>
424
+ </reference>
425
+ </checkout_onepage_success>
426
+ <checkout_onepage_failure translate="label">
427
+ <label>One Page Checkout Failure</label>
428
+ <reference name="root">
429
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
430
+ </reference>
431
+ <reference name="content">
432
+ <block type="checkout/onepage_failure" name="checkout.failure" template="checkout/onepage/failure.phtml"/>
433
+ </reference>
434
+ </checkout_onepage_failure>
435
+ <block type="core/list" name="additional.product.info"/>
436
+ </layout>
app/design/frontend/default/shoe_store/layout/cms.xml ADDED
@@ -0,0 +1,89 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+ -->
28
+ <layout version="0.1.0">
29
+ <!--
30
+ Default layout, loads most of the pages
31
+ -->
32
+
33
+ <default>
34
+ <reference name="footer">
35
+ <block type="cms/block" name="cms_footer_links" before="footer_links">
36
+ <!--
37
+ The content of this block is taken from the database by its block_id.
38
+ You can manage it in admin CMS -> Static Blocks
39
+ -->
40
+ <action method="setBlockId"><block_id>footer_links</block_id></action>
41
+ </block>
42
+ </reference>
43
+ </default>
44
+
45
+ <cms_page translate="label">
46
+ <label>CMS Pages (All)</label>
47
+ <reference name="content">
48
+ <block type="core/template" name="page_content_heading" template="cms/content_heading.phtml"/>
49
+ <block type="page/html_wrapper" name="cms.wrapper" translate="label">
50
+ <label>CMS Content Wrapper</label>
51
+ <action method="setElementClass"><value>std</value></action>
52
+ <block type="cms/page" name="cms_page"/>
53
+ </block>
54
+ </reference>
55
+ </cms_page>
56
+
57
+ <cms_index_index translate="label">
58
+ <label>CMS Home Page</label>
59
+ </cms_index_index>
60
+
61
+ <cms_index_defaultindex>
62
+ <remove name="right"/>
63
+ <remove name="left"/>
64
+
65
+ <reference name="root">
66
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
67
+ </reference>
68
+ <reference name="content">
69
+ <block type="core/template" name="default_home_page" template="cms/default/home.phtml"/>
70
+ </reference>
71
+ </cms_index_defaultindex>
72
+
73
+ <cms_index_noroute translate="label">
74
+ <label>CMS No-Route Page</label>
75
+ </cms_index_noroute>
76
+
77
+ <cms_index_defaultnoroute>
78
+ <remove name="right"/>
79
+ <remove name="left"/>
80
+
81
+ <reference name="root">
82
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
83
+ </reference>
84
+ <reference name="content">
85
+ <block type="core/template" name="default_no_route" template="cms/default/no-route.phtml"/>
86
+ </reference>
87
+ </cms_index_defaultnoroute>
88
+
89
+ </layout>
app/design/frontend/default/shoe_store/layout/customer.xml ADDED
@@ -0,0 +1,293 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+
28
+ Supported layout update handles (action):
29
+ - customer_account_index
30
+ - customer_address_index
31
+ - customer_address_view
32
+ - customer_account_login
33
+ - customer_account_logoutsuccess
34
+ - customer_account_create
35
+ - customer_account_forgotpassword
36
+ - customer_account_confirmation
37
+ - customer_account_edit
38
+
39
+ Supported layout update handles (special):
40
+ - default
41
+
42
+ -->
43
+ <layout version="0.1.0">
44
+
45
+ <!--
46
+ Default layout, loads most of the pages
47
+ -->
48
+
49
+ <default>
50
+ <!-- Mage_Customer -->
51
+ <reference name="top.links">
52
+ <action method="addLink" translate="label title" module="customer"><label>My Account</label><url helper="customer/getAccountUrl"/><title>My Account</title><prepare/><urlParams/><position>10</position></action>
53
+ </reference>
54
+ </default>
55
+
56
+ <!--
57
+ Load this update on every page when customer is logged in
58
+ -->
59
+
60
+ <customer_logged_in>
61
+ <reference name="top.links">
62
+ <action method="addLink" translate="label title" module="customer"><label>Log Out</label><url helper="customer/getLogoutUrl"/><title>Log Out</title><prepare/><urlParams/><position>100</position></action>
63
+ </reference>
64
+ </customer_logged_in>
65
+
66
+ <!--
67
+ Load this update on every page when customer is logged out
68
+ -->
69
+
70
+ <customer_logged_out>
71
+ <!---<reference name="right">
72
+ <block type="customer/form_login" name="customer_form_mini_login" before="-" template="customer/form/mini.login.phtml"/>
73
+ </reference>-->
74
+ <reference name="top.links">
75
+ <action method="addLink" translate="label title" module="customer"><label>Log In</label><url helper="customer/getLoginUrl"/><title>Log In</title><prepare/><urlParams/><position>100</position></action>
76
+ </reference>
77
+ <remove name="reorder"></remove>
78
+ </customer_logged_out>
79
+
80
+ <!--
81
+ Layout for customer login page
82
+ -->
83
+
84
+ <customer_account_login translate="label">
85
+ <label>Customer Account Login Form</label>
86
+ <!-- Mage_Customer -->
87
+ <remove name="right"/>
88
+ <remove name="left"/>
89
+
90
+ <reference name="root">
91
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
92
+ </reference>
93
+ <reference name="content">
94
+ <block type="customer/form_login" name="customer_form_login" template="customer/form/login.phtml" />
95
+ </reference>
96
+ </customer_account_login>
97
+
98
+ <!--
99
+ Layout for customer log out page
100
+ -->
101
+
102
+ <customer_account_logoutsuccess translate="label">
103
+ <label>Customer Account Logout Success</label>
104
+ <!-- Mage_Customer -->
105
+ <remove name="right"/>
106
+ <remove name="left"/>
107
+
108
+ <reference name="root">
109
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
110
+ </reference>
111
+ <reference name="content">
112
+ <block type="core/template" name="customer_logout" template="customer/logout.phtml"/>
113
+ </reference>
114
+ </customer_account_logoutsuccess>
115
+
116
+ <!--
117
+ New customer registration
118
+ -->
119
+
120
+ <customer_account_create translate="label">
121
+ <label>Customer Account Registration Form</label>
122
+ <!-- Mage_Customer -->
123
+ <remove name="right"/>
124
+ <remove name="left"/>
125
+
126
+ <reference name="root">
127
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
128
+ </reference>
129
+ <reference name="content">
130
+ <block type="customer/form_register" name="customer_form_register" template="customer/form/register.phtml">
131
+ <block type="page/html_wrapper" name="customer.form.register.fields.before" as="form_fields_before" translate="label">
132
+ <label>Form Fields Before</label>
133
+ </block>
134
+ </block>
135
+ </reference>
136
+ </customer_account_create>
137
+
138
+ <customer_account_forgotpassword translate="label">
139
+ <label>Customer Forgot Password Form</label>
140
+ <remove name="right"/>
141
+ <remove name="left"/>
142
+
143
+ <reference name="head">
144
+ <action method="setTitle" translate="title" module="customer"><title>Forgot Your Password</title></action>
145
+ </reference>
146
+ <reference name="root">
147
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
148
+ <action method="setHeaderTitle" translate="title" module="customer"><title>Password forgotten</title></action>
149
+ </reference>
150
+ <reference name="content">
151
+ <!--<block type="core/template" name="forgotPassword" template="customer/form/forgotpassword.phtml"/>-->
152
+ <block type="customer/account_forgotpassword" name="forgotPassword" template="customer/form/forgotpassword.phtml" />
153
+ </reference>
154
+ </customer_account_forgotpassword>
155
+
156
+ <customer_account_resetpassword translate="label">
157
+ <label>Reset a Password</label>
158
+ <remove name="right"/>
159
+ <remove name="left"/>
160
+
161
+ <reference name="head">
162
+ <action method="setTitle" translate="title" module="customer">
163
+ <title>Reset a Password</title>
164
+ </action>
165
+ </reference>
166
+ <reference name="root">
167
+ <action method="setTemplate">
168
+ <template>page/1column.phtml</template>
169
+ </action>
170
+ <action method="setHeaderTitle" translate="title" module="customer">
171
+ <title>Reset a Password</title>
172
+ </action>
173
+ </reference>
174
+ <reference name="content">
175
+ <block type="customer/account_resetpassword" name="resetPassword" template="customer/form/resetforgottenpassword.phtml"/>
176
+ </reference>
177
+ </customer_account_resetpassword>
178
+
179
+ <customer_account_confirmation>
180
+ <remove name="right"/>
181
+ <remove name="left"/>
182
+
183
+ <reference name="root">
184
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
185
+ <action method="setHeaderTitle" translate="title" module="customer"><title>Send confirmation link</title></action>
186
+ </reference>
187
+ <reference name="content">
188
+ <block type="core/template" name="accountConfirmation" template="customer/form/confirmation.phtml"/>
189
+ </reference>
190
+ </customer_account_confirmation>
191
+
192
+ <customer_account_edit translate="label">
193
+ <label>Customer Account Edit Form</label>
194
+ <update handle="customer_account"/>
195
+ <reference name="root">
196
+ <action method="setHeaderTitle" translate="title" module="customer"><title>Edit Account Info</title></action>
197
+ </reference>
198
+ <reference name="my.account.wrapper">
199
+ <block type="customer/form_edit" name="customer_edit" template="customer/form/edit.phtml"/>
200
+ </reference>
201
+
202
+ <reference name="left">
203
+ <action method="unsetChild"><name>left.permanent.callout</name></action>
204
+ </reference>
205
+ </customer_account_edit>
206
+
207
+ <!--
208
+ Customer account pages, rendered for all tabs in dashboard
209
+ -->
210
+
211
+ <customer_account translate="label">
212
+ <label>Customer My Account (All Pages)</label>
213
+ <!--remove name="catalog.compare.sidebar"/>
214
+ <remove name="sale.reorder.sidebar"/-->
215
+ <!-- Mage_Customer -->
216
+ <reference name="root">
217
+ <action method="setTemplate"><template>page/2columns-left.phtml</template></action>
218
+ </reference>
219
+
220
+ <reference name="content">
221
+ <block type="page/html_wrapper" name="my.account.wrapper" translate="label">
222
+ <label>My Account Wrapper</label>
223
+ <action method="setElementClass"><value>my-account</value></action>
224
+ </block>
225
+ </reference>
226
+
227
+ <reference name="left">
228
+ <block type="customer/account_navigation" name="customer_account_navigation" before="-" template="customer/account/navigation.phtml">
229
+ <action method="addLink" translate="label" module="customer"><name>account</name><path>customer/account/</path><label>Account Dashboard</label></action>
230
+ <action method="addLink" translate="label" module="customer"><name>account_edit</name><path>customer/account/edit/</path><label>Account Information</label></action>
231
+ <action method="addLink" translate="label" module="customer"><name>address_book</name><path>customer/address/</path><label>Address Book</label></action>
232
+ </block>
233
+ <block type="checkout/cart_sidebar" name="cart_sidebar" template="checkout/cart/sidebar.phtml">
234
+ <action method="addItemRender"><type>simple</type><block>checkout/cart_item_renderer</block><template>checkout/cart/sidebar/default.phtml</template></action>
235
+ <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/cart/sidebar/default.phtml</template></action>
236
+ <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/cart/sidebar/default.phtml</template></action>
237
+ </block>
238
+ <block type="catalog/product_compare_sidebar" name="catalog.compare.sidebar" template="catalog/product/compare/sidebar.phtml"/>
239
+ <remove name="tags_popular"/>
240
+
241
+ </reference>
242
+ </customer_account>
243
+
244
+ <!--
245
+ Customer account home dashboard layout
246
+ -->
247
+
248
+ <customer_account_index translate="label">
249
+ <label>Customer My Account Dashboard</label>
250
+ <update handle="customer_account"/>
251
+ <!-- Mage_Customer -->
252
+ <reference name="root">
253
+ <action method="setTemplate"><template>page/2columns-left.phtml</template></action>
254
+ </reference>
255
+ <reference name="my.account.wrapper">
256
+ <block type="customer/account_dashboard" name="customer_account_dashboard" template="customer/account/dashboard.phtml">
257
+ <block type="customer/account_dashboard_hello" name="customer_account_dashboard_hello" as="hello" template="customer/account/dashboard/hello.phtml"/>
258
+ <block type="core/template" name="customer_account_dashboard_top" as="top" />
259
+ <block type="customer/account_dashboard_info" name="customer_account_dashboard_info" as="info" template="customer/account/dashboard/info.phtml"/>
260
+ <block type="customer/account_dashboard_newsletter" name="customer_account_dashboard_newsletter" as="newsletter" template="customer/account/dashboard/newsletter.phtml"/>
261
+ <block type="customer/account_dashboard_address" name="customer_account_dashboard_address" as="address" template="customer/account/dashboard/address.phtml"/>
262
+ </block>
263
+ </reference>
264
+
265
+ </customer_account_index>
266
+
267
+ <!--
268
+ Customer account address book
269
+ -->
270
+
271
+ <customer_address_index translate="label">
272
+ <label>Customer My Account Address Book</label>
273
+ <!-- Mage_Customer -->
274
+ <update handle="customer_account"/>
275
+ <reference name="my.account.wrapper">
276
+ <block type="customer/address_book" name="address_book" template="customer/address/book.phtml"/>
277
+ </reference>
278
+ </customer_address_index>
279
+
280
+ <!--
281
+ Customer account address edit page
282
+ -->
283
+
284
+ <customer_address_form translate="label">
285
+ <label>Customer My Account Address Edit Form</label>
286
+ <!-- Mage_Customer -->
287
+ <update handle="customer_account"/>
288
+ <reference name="my.account.wrapper">
289
+ <block type="customer/address_edit" name="customer_address_edit" template="customer/address/edit.phtml"/>
290
+ </reference>
291
+ </customer_address_form>
292
+
293
+ </layout>
app/design/frontend/default/shoe_store/layout/custommenu.xml ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout version="0.1.0">
3
+ <default>
4
+ <reference name="head">
5
+ <action method="addCss" ifconfig="custom_menu/general/enabled"><stylesheet>css/custommenu.css</stylesheet></action>
6
+ <action method="addItem" ifconfig="custom_menu/general/enabled"><type>skin_js</type><name>js/custommenu.js</name></action>
7
+ </reference>
8
+ <reference name="catalog.topnav">
9
+ <action method="setTemplate" ifconfig="custom_menu/general/enabled"><template>custommenu/top.phtml</template></action>
10
+ </reference>
11
+ </default>
12
+ </layout>
app/design/frontend/default/shoe_store/layout/easytabs.xml ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <layout version="0.1.0">
3
+ <default>
4
+ <reference name="head">
5
+ <action method="addItem" ifconfig="easy_tabs/general/enabled"><type>skin_css</type><name>css/easytabs.css</name></action>
6
+ </reference>
7
+ </default>
8
+
9
+ <catalog_product_view>
10
+ <reference name="product.info">
11
+ <action method="unsetChild" ifconfig="easy_tabs/general/descriptiontabbed"><name>description</name></action>
12
+ <action method="unsetChild" ifconfig="easy_tabs/general/additionaltabbed"><name>additional</name></action>
13
+ <action method="unsetChild" ifconfig="easy_tabs/general/upsellproductstabbed"><name>upsell_products</name></action>
14
+ </reference>
15
+ <reference name="right">
16
+ <action method="unsetChild" ifconfig="easy_tabs/general/relatedtabbed"><name>catalog.product.related</name></action>
17
+ </reference>
18
+ <reference name="product.info.additional">
19
+ <action method="unsetChild" ifconfig="easy_tabs/general/tagstabbed"><name>product_tag_list</name></action>
20
+ <block type="catalog/product_view_tabs" name="product.info.tabs" as="info_tabs">
21
+ <action method="setTemplate" ifconfig="easy_tabs/general/enabled"><template>easytabs/tabs.phtml</template></action>
22
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/general/descriptiontabbed"><alias>description_tabbed</alias><title>Product Description</title><block>catalog/product_view_description</block><template>easytabs/description.phtml</template></action>
23
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/general/additionaltabbed"><alias>additional_tabbed</alias><title>Additional Information</title><block>catalog/product_view_attributes</block><template>easytabs/attributes.phtml</template></action>
24
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/general/upsellproductstabbed"><alias>upsell_products_tabbed</alias><title>We Also Recommend</title><block>catalog/product_list_upsell</block><template>catalog/product/list/upsell.phtml</template></action>
25
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/general/relatedtabbed"><alias>related_tabbed</alias><title>Related Products</title><block>catalog/product_list_related</block><template>easytabs/catalogproductrelated.phtml</template></action>
26
+ <action method="addTab" translate="title" module="tag" ifconfig="easy_tabs/general/tagstabbed"><alias>tags_tabbed</alias><title>Product Tags</title><block>tag/product_list</block><template>easytabs/catalogproducttags.phtml</template></action>
27
+ <action method="addTab" translate="title" module="review" ifconfig="easy_tabs/general/reviewtabbed"><alias>review_tabbed</alias><title>Product's Review</title><block>review/product_view_list</block><template>easytabs/catalogproductreview.phtml</template></action>
28
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/custom/customtab"><alias>custom</alias><title>Custom tab</title><block>catalog/product_view</block><template>easytabs/catalogproductcustom.phtml</template></action>
29
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/custom/customtab1"><alias>custom1</alias><title>Custom tab</title><block>catalog/product_view</block><template>easytabs/catalogproductcustom1.phtml</template></action>
30
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/custom/customtab2"><alias>custom2</alias><title>Custom tab</title><block>catalog/product_view</block><template>easytabs/catalogproductcustom2.phtml</template></action>
31
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/custom/customtab3"><alias>custom3</alias><title>Custom tab</title><block>catalog/product_view</block><template>easytabs/catalogproductcustom3.phtml</template></action>
32
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/custom/customtab4"><alias>custom4</alias><title>Custom tab</title><block>catalog/product_view</block><template>easytabs/catalogproductcustom4.phtml</template></action>
33
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/customcms/tabcms"><alias>cms</alias><title>CMS tab</title><block>core/template</block><template>easytabs/catalogproductcms.phtml</template></action>
34
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/customcms/tabcms1"><alias>cms1</alias><title>CMS tab</title><block>core/template</block><template>easytabs/catalogproductcms1.phtml</template></action>
35
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/customcms/tabcms2"><alias>cms2</alias><title>CMS tab</title><block>core/template</block><template>easytabs/catalogproductcms2.phtml</template></action>
36
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/customcms/tabcms3"><alias>cms3</alias><title>CMS tab</title><block>core/template</block><template>easytabs/catalogproductcms3.phtml</template></action>
37
+ <action method="addTab" translate="title" module="catalog" ifconfig="easy_tabs/customcms/tabcms4"><alias>cms4</alias><title>CMS tab</title><block>core/template</block><template>easytabs/catalogproductcms4.phtml</template></action>
38
+ </block>
39
+ </reference>
40
+ </catalog_product_view>
41
+ </layout>
app/design/frontend/default/shoe_store/layout/magic_cloudzoom.xml ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout>
3
+ <catalog_product_view>
4
+ <reference name="head">
5
+ <action method="addCss">
6
+ <stylesheet>css/cloud-zoom.css</stylesheet>
7
+ </action>
8
+ <action method="addItem">
9
+ <type>skin_js</type>
10
+ <name>js/cloud-zoom.1.0.2.min.js</name>
11
+ </action>
12
+ </reference>
13
+
14
+ <reference name="product.info.media">
15
+ <action method="setTemplate" ifconfig="magic_cloudzoom/general/enabled">
16
+ <template>magic/catalog/product/view/media.phtml</template>
17
+ </action>
18
+ </reference>
19
+ </catalog_product_view>
20
+
21
+ <review_product_list translate="label">
22
+ <reference name="head">
23
+ <action method="addJs"><script>varien/product.js</script></action>
24
+ <action method="addCss">
25
+ <stylesheet>css/cloud-zoom.css</stylesheet>
26
+ </action>
27
+ <action method="addItem">
28
+ <type>skin_js</type>
29
+ <name>js/cloud-zoom.1.0.2.min.js</name>
30
+ </action>
31
+ </reference>
32
+
33
+ <reference name="product.info.media">
34
+ <action method="setTemplate" ifconfig="magic_cloudzoom/general/enabled">
35
+ <template>magic/catalog/product/view/media.phtml</template>
36
+ </action>
37
+ </reference>
38
+ </review_product_list>
39
+ </layout>
app/design/frontend/default/shoe_store/layout/newsletter.xml ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+
28
+ -->
29
+ <layout version="0.1.0">
30
+
31
+ <!--
32
+ Default layout, loads most of the pages
33
+ -->
34
+
35
+ <default>
36
+
37
+ <!-- Mage_Newsletter -->
38
+ <!--<reference name="left">
39
+ <block type="newsletter/subscribe" name="left.newsletter" template="newsletter/subscribe.phtml"/>
40
+ </reference>-->
41
+
42
+ </default>
43
+
44
+ <!--
45
+ Customer account pages, rendered for all tabs in dashboard
46
+ -->
47
+
48
+ <customer_account>
49
+ <!-- Mage_Newsletter -->
50
+ <reference name="customer_account_navigation">
51
+ <action method="addLink" translate="label" module="newsletter"><name>newsletter</name><path>newsletter/manage/</path><label>Newsletter Subscriptions</label></action>
52
+ </reference>
53
+ <remove name="left.newsletter"/>
54
+ </customer_account>
55
+
56
+ <newsletter_manage_index translate="label">
57
+ <label>Customer My Account Newsletter Subscriptions</label>
58
+ <update handle="customer_account"/>
59
+ <reference name="my.account.wrapper">
60
+ <block type="customer/newsletter" name="customer_newsletter">
61
+ <block type="page/html_wrapper" name="customer.newsletter.form.before" as="form_before" translate="label">
62
+ <label>Newsletter Subscription Form Before</label>
63
+ <action method="setMayBeInvisible"><value>1</value></action>
64
+ </block>
65
+ </block>
66
+ </reference>
67
+ </newsletter_manage_index>
68
+
69
+ </layout>
app/design/frontend/default/shoe_store/layout/page.xml ADDED
@@ -0,0 +1,203 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+ -->
28
+ <layout version="0.1.0">
29
+ <!--
30
+ Default layout, loads most of the pages
31
+ -->
32
+
33
+ <default translate="label" module="page">
34
+ <label>All Pages</label>
35
+ <block type="page/html" name="root" output="toHtml" template="page/2columns-right.phtml">
36
+
37
+ <block type="page/html_head" name="head" as="head">
38
+ <action method="addJs"><script>bootstrap/jquery-1.8.2.min.js</script></action>
39
+ <action method="addJs"><script>bootstrap/jquery-noconflict.js</script></action>
40
+ <action method="addJs"><script>bootstrap/bootstrap.js</script></action>
41
+ <action method="addJs"><script>bootstrap/jquery.accordion.js</script></action>
42
+ <action method="addJs"><script>bootstrap/bootstrap-tooltip.js</script></action>
43
+ <action method="addJs"><script>bootstrap/cloud-zoom.1.0.2.min.js</script></action>
44
+ <action method="addJs"><script>bootstrap/jquery.jcarousel.min.js</script></action>
45
+ <!--<action method="addItem"><type>skin_js</type><name>js/jquery.easing.1.3.js</name><params/></action>
46
+ <action method="addItem"><type>skin_js</type><name>js/common.js</name><params/></action>-->
47
+
48
+ <action method="addJs"><script>prototype/prototype.js</script></action>
49
+ <action method="addJs"><script>lib/ccard.js</script></action>
50
+ <action method="addJs"><script>prototype/validation.js</script></action>
51
+ <action method="addJs"><script>scriptaculous/builder.js</script></action>
52
+ <action method="addJs"><script>scriptaculous/effects.js</script></action>
53
+ <action method="addJs"><script>scriptaculous/dragdrop.js</script></action>
54
+ <action method="addJs"><script>scriptaculous/controls.js</script></action>
55
+ <action method="addJs"><script>scriptaculous/slider.js</script></action>
56
+ <action method="addJs"><script>varien/js.js</script></action>
57
+ <action method="addJs"><script>varien/form.js</script></action>
58
+ <action method="addJs"><script>varien/menu.js</script></action>
59
+ <action method="addJs"><script>mage/translate.js</script></action>
60
+ <action method="addJs"><script>mage/cookies.js</script></action>
61
+
62
+ <block type="page/js_cookie" name="js_cookies" template="page/js/cookie.phtml"/>
63
+
64
+ <action method="addCss"><stylesheet>css/fonts.css</stylesheet></action>
65
+ <action method="addCss"><stylesheet>css/styles.css</stylesheet></action>
66
+ <action method="addCss"><stylesheet>css/bootstrap.css</stylesheet></action>
67
+ <action method="addCss"><stylesheet>css/bootstrap-responsive.css</stylesheet></action>
68
+ <action method="addItem"><type>skin_css</type><name>css/styles-ie.css</name><params/><if>lt IE 8</if></action>
69
+ <action method="addCss"><stylesheet>css/widgets.css</stylesheet></action>
70
+ <action method="addCss"><stylesheet>css/print.css</stylesheet><params>media="print"</params></action>
71
+
72
+ <action method="addItem"><type>js</type><name>lib/ds-sleight.js</name><params/><if>lt IE 7</if></action>
73
+ <action method="addItem"><type>skin_js</type><name>js/ie6.js</name><params/><if>lt IE 7</if></action>
74
+ </block>
75
+
76
+ <block type="core/text_list" name="after_body_start" as="after_body_start" translate="label">
77
+ <label>Page Top</label>
78
+ </block>
79
+
80
+ <block type="page/html_notices" name="global_notices" as="global_notices" template="page/html/notices.phtml" />
81
+
82
+ <block type="page/html_header" name="header" as="header">
83
+ <block type="page/template_links" name="top.links" as="topLinks"/>
84
+ <block type="page/switch" name="store_language" as="store_language" template="page/switch/languages.phtml"/>
85
+ <block type="core/text_list" name="top.menu" as="topMenu" translate="label">
86
+ <label>Navigation Bar</label>
87
+ <block type="page/html_topmenu" name="catalog.topnav" template="page/html/topmenu.phtml"/>
88
+ </block>
89
+ <block type="page/html_wrapper" name="top.container" as="topContainer" translate="label">
90
+ <label>Page Header</label>
91
+ <action method="setElementClass"><value>top-container</value></action>
92
+ </block>
93
+ </block>
94
+
95
+ <block type="page/html_breadcrumbs" name="breadcrumbs" as="breadcrumbs"/>
96
+
97
+ <block type="core/text_list" name="left" as="left" translate="label">
98
+ <label>Left Column</label>
99
+ </block>
100
+
101
+ <block type="core/messages" name="global_messages" as="global_messages"/>
102
+ <block type="core/messages" name="messages" as="messages"/>
103
+
104
+ <block type="core/text_list" name="content" as="content" translate="label">
105
+ <label>Main Content Area</label>
106
+ </block>
107
+
108
+ <block type="core/text_list" name="right" as="right" translate="label">
109
+ <label>Right Column</label>
110
+ </block>
111
+
112
+ <block type="page/html_footer" name="footer" as="footer" template="page/html/footer.phtml">
113
+ <block type="page/html_wrapper" name="bottom.container" as="bottomContainer" translate="label">
114
+ <label>Page Footer</label>
115
+ <action method="setElementClass"><value>bottom-container</value></action>
116
+ </block>
117
+ <block type="page/switch" name="store_switcher" as="store_switcher" template="page/switch/stores.phtml"/>
118
+ <block type="page/template_links" name="footer_links" as="footer_links" template="page/template/links.phtml"/>
119
+ </block>
120
+
121
+ <block type="core/text_list" name="before_body_end" as="before_body_end" translate="label">
122
+ <label>Page Bottom</label>
123
+ </block>
124
+ </block>
125
+
126
+ <block type="core/profiler" output="toHtml" name="core_profiler"/>
127
+ </default>
128
+
129
+ <print translate="label" module="page">
130
+ <label>All Pages (Print Version)</label>
131
+ <!-- Mage_Page -->
132
+ <block type="page/html" name="root" output="toHtml" template="page/print.phtml">
133
+
134
+ <block type="page/html_head" name="head" as="head">
135
+ <action method="addJs"><script>prototype/prototype.js</script></action>
136
+ <action method="addJs"><script>mage/translate.js</script></action>
137
+ <action method="addJs"><script>lib/ccard.js</script></action>
138
+ <action method="addJs"><script>prototype/validation.js</script></action>
139
+ <action method="addJs"><script>varien/js.js</script></action>
140
+
141
+ <action method="addCss"><stylesheet>css/styles.css</stylesheet></action>
142
+ <action method="addItem"><type>skin_css</type><name>css/styles-ie.css</name><params/><if>lt IE 8</if></action>
143
+ <action method="addCss"><stylesheet>css/widgets.css</stylesheet></action>
144
+ <action method="addCss"><stylesheet>css/print.css</stylesheet><params>media="print"</params></action>
145
+
146
+ <action method="addItem"><type>js</type><name>lib/ds-sleight.js</name><params/><if>lt IE 7</if></action>
147
+ <action method="addItem"><type>skin_js</type><name>js/ie6.js</name><params/><if>lt IE 7</if></action>
148
+
149
+ </block>
150
+
151
+ <block type="core/text_list" name="content" as="content" translate="label">
152
+ <label>Main Content Area</label>
153
+ </block>
154
+
155
+ </block>
156
+ </print>
157
+
158
+ <!-- Custom page layout handles -->
159
+ <page_empty translate="label">
160
+ <label>All Empty Layout Pages</label>
161
+ <reference name="root">
162
+ <action method="setTemplate"><template>page/empty.phtml</template></action>
163
+ <!-- Mark root page block that template is applied -->
164
+ <action method="setIsHandle"><applied>1</applied></action>
165
+ </reference>
166
+ </page_empty>
167
+
168
+ <page_one_column translate="label">
169
+ <label>All One-Column Layout Pages</label>
170
+ <reference name="root">
171
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
172
+ <!-- Mark root page block that template is applied -->
173
+ <action method="setIsHandle"><applied>1</applied></action>
174
+ </reference>
175
+ </page_one_column>
176
+
177
+ <page_two_columns_left translate="label">
178
+ <label>All Two-Column Layout Pages (Left Column)</label>
179
+ <reference name="root">
180
+ <action method="setTemplate"><template>page/2columns-left.phtml</template></action>
181
+ <!-- Mark root page block that template is applied -->
182
+ <action method="setIsHandle"><applied>1</applied></action>
183
+ </reference>
184
+ </page_two_columns_left>
185
+
186
+ <page_two_columns_right translate="label">
187
+ <label>All Two-Column Layout Pages (Right Column)</label>
188
+ <reference name="root">
189
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
190
+ <!-- Mark root page block that template is applied -->
191
+ <action method="setIsHandle"><applied>1</applied></action>
192
+ </reference>
193
+ </page_two_columns_right>
194
+
195
+ <page_three_columns translate="label">
196
+ <label>All Three-Column Layout Pages</label>
197
+ <reference name="root">
198
+ <action method="setTemplate"><template>page/3columns.phtml</template></action>
199
+ <!-- Mark root page block that template is applied -->
200
+ <action method="setIsHandle"><applied>1</applied></action>
201
+ </reference>
202
+ </page_three_columns>
203
+ </layout>
app/design/frontend/default/shoe_store/layout/tag.xml ADDED
@@ -0,0 +1,134 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Academic Free License (AFL 3.0)
9
+ * that is bundled with this package in the file LICENSE_AFL.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/afl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to license@magentocommerce.com so we can send you a copy immediately.
15
+ *
16
+ * DISCLAIMER
17
+ *
18
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
19
+ * versions in the future. If you wish to customize Magento for your
20
+ * needs please refer to http://www.magentocommerce.com for more information.
21
+ *
22
+ * @category design
23
+ * @package base_default
24
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
25
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
26
+ */
27
+
28
+ -->
29
+ <layout version="0.1.0">
30
+
31
+ <!--
32
+ Default layout, loads most of the pages
33
+ -->
34
+
35
+ <default>
36
+ <!-- Mage_Tag -->
37
+ <reference name="right">
38
+ <block type="tag/popular" name="tags_popular" template="tag/popular.phtml"/>
39
+ </reference>
40
+
41
+ </default>
42
+
43
+ <!--
44
+ Customer account pages, rendered for all tabs in dashboard
45
+ -->
46
+
47
+ <customer_account>
48
+ <!-- Mage_Tag -->
49
+ <reference name="customer_account_navigation">
50
+ <action method="addLink" translate="label" module="tag"><name>tags</name><path>tag/customer/</path><label>My Tags</label></action>
51
+ </reference>
52
+ </customer_account>
53
+
54
+ <!--
55
+ Customer account home dashboard layout
56
+ -->
57
+
58
+ <customer_account_index>
59
+ <!-- Mage_Tag -->
60
+ <reference name="customer_account_dashboard">
61
+ <action method="unsetChild"><name>customer_account_dashboard_info2</name></action>
62
+ <block type="tag/customer_recent" name="customer_account_dashboard_info2" as="info2" template="tag/customer/recent.phtml"/>
63
+ </reference>
64
+ </customer_account_index>
65
+
66
+ <catalog_product_view translate="label">
67
+ <label>Catalog Product View</label>
68
+ <!-- Mage_Tag -->
69
+ <reference name="product.info.additional">
70
+ <block type="tag/product_list" name="product_tag_list" before="-" template="tag/list.phtml">
71
+ <block type="page/html_wrapper" name="product.tag.list.list.before" as="list_before" translate="label">
72
+ <label>Tags List Before</label>
73
+ <action method="setMayBeInvisible"><value>1</value></action>
74
+ </block>
75
+ </block>
76
+ </reference>
77
+ </catalog_product_view>
78
+
79
+ <!--
80
+ All tags page
81
+ -->
82
+
83
+ <tag_list_index translate="label">
84
+ <label>Tags List (All Available)</label>
85
+ <!-- Mage_Tag -->
86
+ <reference name="root">
87
+ <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
88
+ </reference>
89
+ <reference name="content">
90
+ <block type="tag/all" name="tags_all" template="tag/cloud.phtml"/>
91
+ </reference>
92
+ </tag_list_index>
93
+
94
+ <tag_product_list translate="label">
95
+ <label>Tagged Products List</label>
96
+ <!-- Mage_Tag -->
97
+ <reference name="content">
98
+ <block type="tag/product_result" name="tag_products" template="catalogsearch/result.phtml">
99
+ <block type="catalog/product_list" name="search_result_list" template="catalog/product/list.phtml">
100
+ <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
101
+ <block type="page/html_pager" name="product_list_toolbar_pager"/>
102
+ </block>
103
+ <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
104
+ </block>
105
+ <action method="setListOrders"/>
106
+ <action method="setListModes"/>
107
+ <action method="setListCollection"/>
108
+ </block>
109
+ </reference>
110
+ </tag_product_list>
111
+
112
+ <tag_customer_index translate="label">
113
+ <label>Customer My Account My Tags List</label>
114
+ <update handle="customer_account"/>
115
+ <reference name="root">
116
+ <action method="setHeaderTitle" translate="title" module="customer"><title>My Account</title></action>
117
+ </reference>
118
+ <reference name="my.account.wrapper">
119
+ <block type="tag/customer_tags" name="customer_tags" template="tag/customer/tags.phtml"/>
120
+ </reference>
121
+ </tag_customer_index>
122
+
123
+ <tag_customer_view translate="label">
124
+ <label>Customer My Account Tag View</label>
125
+ <update handle="customer_account"/>
126
+ <reference name="root">
127
+ <action method="setHeaderTitle" translate="title" module="customer"><title>My Account</title></action>
128
+ </reference>
129
+ <reference name="my.account.wrapper">
130
+ <block type="tag/customer_view" name="customer_view" template="tag/customer/view.phtml"/>
131
+ </reference>
132
+ </tag_customer_view>
133
+
134
+ </layout>
app/design/frontend/default/shoe_store/template/ajax/catalog/product/options.phtml ADDED
@@ -0,0 +1,169 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php $_helper = $this->helper('catalog/output'); ?>
2
+ <?php $_product = $this->getProduct(); ?>
3
+ <script type="text/javascript">
4
+ var optionsPrice = new Product.OptionsPrice(<?php echo $this->getJsonConfig() ?>);
5
+ </script>
6
+ <style>
7
+ .quickBox .product-options {
8
+ width: 260px;
9
+ }
10
+ .quickBox .product-options-bottom{background:none;}
11
+ </style>
12
+
13
+ <div class="product-view quickBox" style="width:798px"> <a id="quick_close" href="JavaScript:Void(0)"></a>
14
+ <div class="product-essential" style="width:747px">
15
+ <form action="<?php echo $this->getSubmitUrl($_product) ?>" method="post" id="product_addtocart_form"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>>
16
+ <div class="no-display">
17
+ <input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
18
+ <input type="hidden" name="related_product" id="related-products-field" value="" />
19
+ </div>
20
+ <div class="quick_product">
21
+ <div class="product-name">
22
+ <h1><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></h1>
23
+ </div>
24
+ <div class="product-img-box"> <?php echo $this->getChildHtml('media') ?> </div>
25
+ <div class="quick_right pro-right content">
26
+ <div class="rating_pan" id="target_rating"><?php echo $this->getReviewsSummaryHtml($_product, false, true)?></div>
27
+ <script type="text/javascript">
28
+ jQuery(document).ready(function() {
29
+ jQuery('#target_rating').hover(function(){
30
+ jQuery('.rating-links a').attr('target','_parent').attr('href','<?php echo $_product->getProductUrl() ?>#product_tabs_tabreviews');
31
+ jQuery('.no-rating a').attr('target','_parent').attr('href','<?php echo $_product->getProductUrl() ?>#product_tabs_tabreviews');
32
+ });
33
+ });
34
+
35
+ </script>
36
+ <?php echo $this->getChildHtml('product_type_data') ?>
37
+ <div class="quick_cart">
38
+ <?php if (!$this->hasOptions()):?>
39
+ <div class="add-to-box">
40
+ <?php if($_product->isSaleable()): ?>
41
+ <?php echo $this->getChildHtml('addtocart') ?>
42
+ <?php endif; ?>
43
+ </div>
44
+ <?php endif; ?>
45
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
46
+ <?php echo $this->getChildChildHtml('container1', '', true, true) ?>
47
+ <?php endif;?>
48
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
49
+ <?php echo $this->getChildChildHtml('container2', '', true, true) ?>
50
+ <?php endif;?>
51
+ </div>
52
+ <div class="view_product"><a target="_parent" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped; ?>">View Product Details</a></div>
53
+ </div>
54
+ </div>
55
+ <div class="clearer"></div>
56
+ </form>
57
+ <script type="text/javascript">
58
+
59
+ //<![CDATA[
60
+
61
+ var productAddToCartForm = new VarienForm('product_addtocart_form');
62
+
63
+ productAddToCartForm.submit = function(button, url) {
64
+
65
+ if (this.validator.validate()) {
66
+
67
+ var form = this.form;
68
+
69
+ var oldUrl = form.action;
70
+
71
+ if (url) {
72
+
73
+ form.action = url;
74
+
75
+ }
76
+
77
+ var e = null;
78
+
79
+ // Start of our new ajax code
80
+
81
+ if (!url) {
82
+
83
+ url = jQuery('#product_addtocart_form').attr('action');
84
+
85
+ }
86
+
87
+ url = url.replace("checkout/cart","ajax/index"); // New Code
88
+
89
+ var data = jQuery('#product_addtocart_form').serialize();
90
+
91
+ data += '&isAjax=1';
92
+
93
+ jQuery('#ajax_loader').show();
94
+
95
+ try {
96
+
97
+ jQuery.ajax( {
98
+
99
+ url : url,
100
+
101
+ dataType : 'json',
102
+
103
+ type : 'post',
104
+
105
+ data : data,
106
+
107
+ success : function(data) {
108
+
109
+ jQuery('#ajax_loader').hide();
110
+
111
+ parent.setAjaxData(data,true);
112
+
113
+ }
114
+
115
+ });
116
+
117
+ } catch (e) {
118
+
119
+ }
120
+
121
+ // End of our new ajax code
122
+
123
+ this.form.action = oldUrl;
124
+
125
+ if (e) {
126
+
127
+ throw e;
128
+
129
+ }
130
+
131
+ }
132
+
133
+ }.bind(productAddToCartForm);
134
+
135
+ productAddToCartForm.submitLight = function(button, url){
136
+
137
+ if(this.validator) {
138
+
139
+ var nv = Validation.methods;
140
+
141
+ delete Validation.methods['required-entry'];
142
+
143
+ delete Validation.methods['validate-one-required'];
144
+
145
+ delete Validation.methods['validate-one-required-by-name'];
146
+
147
+ if (this.validator.validate()) {
148
+
149
+ if (url) {
150
+
151
+ this.form.action = url;
152
+
153
+ }
154
+
155
+ this.form.submit();
156
+
157
+ }
158
+
159
+ Object.extend(Validation.methods, nv);
160
+
161
+ }
162
+
163
+ }.bind(productAddToCartForm);
164
+
165
+ //]]>
166
+
167
+ </script>
168
+ </div>
169
+ </div>
app/design/frontend/default/shoe_store/template/ajax/catalog/product/view.phtml ADDED
@@ -0,0 +1,146 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php $_helper = $this->helper('catalog/output'); ?>
2
+ <?php $_product = $this->getProduct(); ?>
3
+ <script type="text/javascript">
4
+ var optionsPrice = new Product.OptionsPrice(<?php echo $this->getJsonConfig() ?>);
5
+ </script>
6
+ <div id="messages_product_view"><?php echo $this->getMessagesBlock()->getGroupedHtml() ?></div>
7
+ <div class="product-view">
8
+ <div class="product-essential">
9
+ <form action="<?php echo $this->getSubmitUrl($_product) ?>" method="post" id="product_addtocart_form"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>>
10
+ <div class="no-display">
11
+ <input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
12
+ <input type="hidden" name="related_product" id="related-products-field" value="" />
13
+ </div>
14
+
15
+ <div class="product-shop">
16
+ <div class="product-name">
17
+ <h1><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></h1>
18
+ </div>
19
+
20
+ <?php if ($this->canEmailToFriend()): ?>
21
+ <p class="email-friend"><a href="<?php echo $this->helper('catalog/product')->getEmailToFriendUrl($_product) ?>"><?php echo $this->__('Email to a Friend') ?></a></p>
22
+ <?php endif; ?>
23
+
24
+ <?php echo $this->getReviewsSummaryHtml($_product, false, true)?>
25
+ <?php echo $this->getChildHtml('alert_urls') ?>
26
+ <?php echo $this->getChildHtml('product_type_data') ?>
27
+ <?php echo $this->getTierPriceHtml() ?>
28
+ <?php echo $this->getChildHtml('extrahint') ?>
29
+
30
+ <?php if (!$this->hasOptions()):?>
31
+ <div class="add-to-box">
32
+ <?php if($_product->isSaleable()): ?>
33
+ <?php echo $this->getChildHtml('addtocart') ?>
34
+ <?php if( $this->helper('wishlist')->isAllow() || $_compareUrl=$this->helper('catalog/product_compare')->getAddUrl($_product)): ?>
35
+ <span class="or"><?php echo $this->__('OR') ?></span>
36
+ <?php endif; ?>
37
+ <?php endif; ?>
38
+ <?php echo $this->getChildHtml('addto') ?>
39
+ </div>
40
+ <?php echo $this->getChildHtml('extra_buttons') ?>
41
+ <?php endif; ?>
42
+
43
+ <?php if ($_product->getShortDescription()):?>
44
+ <div class="short-description">
45
+ <h2><?php echo $this->__('Quick Overview') ?></h2>
46
+ <div class="std"><?php echo $_helper->productAttribute($_product, nl2br($_product->getShortDescription()), 'short_description') ?></div>
47
+ </div>
48
+ <?php endif;?>
49
+
50
+ <?php echo $this->getChildHtml('other');?>
51
+
52
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
53
+ <?php echo $this->getChildChildHtml('container1', '', true, true) ?>
54
+ <?php endif;?>
55
+
56
+ </div>
57
+
58
+ <div class="product-img-box">
59
+ <?php echo $this->getChildHtml('media') ?>
60
+ </div>
61
+
62
+ <div class="clearer"></div>
63
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
64
+ <?php echo $this->getChildChildHtml('container2', '', true, true) ?>
65
+ <?php endif;?>
66
+ </form>
67
+ <script type="text/javascript">
68
+ //<![CDATA[
69
+ var productAddToCartForm = new VarienForm('product_addtocart_form');
70
+ productAddToCartForm.submit = function(button, url) {
71
+ if (this.validator.validate()) {
72
+ var form = this.form;
73
+ var oldUrl = form.action;
74
+ if (url) {
75
+ form.action = url;
76
+ }
77
+ var e = null;
78
+ // Start of our new ajax code
79
+ if (!url) {
80
+ url = jQuery('#product_addtocart_form').attr('action');
81
+ }
82
+ url = url.replace("checkout/cart","ajax/index"); // New Code
83
+ var data = jQuery('#product_addtocart_form').serialize();
84
+ data += '&isAjax=1';
85
+ jQuery('#ajax_loader').show();
86
+ try {
87
+ jQuery.ajax( {
88
+ url : url,
89
+ dataType : 'json',
90
+ type : 'post',
91
+ data : data,
92
+ success : function(data) {
93
+ jQuery('#ajax_loader').hide();
94
+ if(data.status == 'ERROR'){
95
+ alert(data.message);
96
+ }else{
97
+ if(jQuery('.block-cart')){
98
+ jQuery('.block-cart').replaceWith(data.sidebar);
99
+ }
100
+ if(jQuery('.header .links')){
101
+ jQuery('.header .links').replaceWith(data.toplink);
102
+ }
103
+ }
104
+ }
105
+ });
106
+ } catch (e) {
107
+ }
108
+ // End of our new ajax code
109
+ this.form.action = oldUrl;
110
+ if (e) {
111
+ throw e;
112
+ }
113
+ }
114
+ }.bind(productAddToCartForm);
115
+ productAddToCartForm.submitLight = function(button, url){
116
+ if(this.validator) {
117
+ var nv = Validation.methods;
118
+ delete Validation.methods['required-entry'];
119
+ delete Validation.methods['validate-one-required'];
120
+ delete Validation.methods['validate-one-required-by-name'];
121
+ if (this.validator.validate()) {
122
+ if (url) {
123
+ this.form.action = url;
124
+ }
125
+ this.form.submit();
126
+ }
127
+ Object.extend(Validation.methods, nv);
128
+ }
129
+ }.bind(productAddToCartForm);
130
+ //]]>
131
+ </script>
132
+ </div>
133
+
134
+ <div class="product-collateral">
135
+ <?php foreach ($this->getChildGroup('detailed_info', 'getChildHtml') as $alias => $html):?>
136
+ <div class="box-collateral <?php echo "box-{$alias}"?>">
137
+ <?php if ($title = $this->getChildData($alias, 'title')):?>
138
+ <h2><?php echo $this->escapeHtml($title); ?></h2>
139
+ <?php endif;?>
140
+ <?php echo $html; ?>
141
+ </div>
142
+ <?php endforeach;?>
143
+ <?php echo $this->getChildHtml('upsell_products') ?>
144
+ <?php echo $this->getChildHtml('product_additional_data') ?>
145
+ </div>
146
+ </div>
app/design/frontend/default/shoe_store/template/ajax/catalog/product/view/addtocart.phtml ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php $_product = $this->getProduct(); ?>
2
+ <?php $buttonTitle = $this->__('Add to Cart'); ?>
3
+ <?php if($_product->isSaleable()): ?>
4
+ <div class="add-to-cart">
5
+ <?php if(!$_product->isGrouped()): ?>
6
+ <label for="qty"><?php echo $this->__('Qty:') ?></label>
7
+ <div class="qty_pan">
8
+ <input type="text" name="qty" id="qty" maxlength="12" value="1" title="<?php echo $this->__('Qty') ?>" class="input-text qty" />
9
+ </div>
10
+ <?php endif; ?>
11
+ <button type="button" title="<?php echo $buttonTitle ?>" class="button btn-cart" onclick="productAddToCartForm.submit(this)"><span><span><?php echo $buttonTitle ?></span></span></button>
12
+ <span id='ajax_loader' style='display:none'><img src='<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif')?>'/></span>
13
+
14
+ <?php echo $this->getChildHtml('', true, true) ?>
15
+ </div>
16
+ <?php endif; ?>
17
+ <script type="text/javascript">
18
+ jQuery(function() {
19
+
20
+ jQuery("div.add-to-cart .qty_pan").append('<div class="add">&#8250;</div><div class="dec add">&#8249;</div>');
21
+
22
+ jQuery(".add").click(function() {
23
+ var jQueryadd = jQuery(this);
24
+ var oldValue = jQueryadd.parent().find("input").val();
25
+ var newVal = 0;
26
+
27
+ if (jQueryadd.text() == "›") {
28
+ newVal = parseFloat(oldValue) + 1;
29
+ // AJAX save would go here
30
+ } else {
31
+ // Don't allow decrementing below zero
32
+ if (oldValue > 1) {
33
+ newVal = parseFloat(oldValue) - 1;
34
+ // AJAX save would go here
35
+ }
36
+ if(oldValue == 1){
37
+ newVal = parseFloat(oldValue);
38
+ }
39
+ }
40
+ jQueryadd.parent().find("input").val(newVal);
41
+ });
42
+
43
+
44
+ });
45
+
46
+ </script>
app/design/frontend/default/shoe_store/template/ajax/catalog/product/view/list.phtml ADDED
@@ -0,0 +1,164 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_productCollection=$this->getLoadedProductCollection();
3
+ $_helper = $this->helper('catalog/output');
4
+ ?>
5
+ <?php if(!$_productCollection->count()): ?>
6
+ <p class="note-msg"><?php echo $this->__('There are no products matching the selection.') ?></p>
7
+ <?php else: ?>
8
+ <div class="category-products">
9
+ <?php echo $this->getToolbarHtml() ?>
10
+ <?php // List mode ?>
11
+ <?php if($this->getMode()!='grid'): ?>
12
+ <?php $_iterator = 0; ?>
13
+ <ol class="products-list" id="products-list">
14
+ <?php foreach ($_productCollection as $_product): ?>
15
+ <li class="item<?php if( ++$_iterator == sizeof($_productCollection) ): ?> last<?php endif; ?>">
16
+ <?php // Product Image ?>
17
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
18
+ <?php // Product description ?>
19
+ <div class="product-shop">
20
+ <div class="f-fix">
21
+ <?php $_productNameStripped = $this->stripTags($_product->getName(), null, true); ?>
22
+ <h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped; ?>"><?php echo $_helper->productAttribute($_product, $_product->getName() , 'name'); ?></a></h2>
23
+ <?php if($_product->getRatingSummary()): ?>
24
+ <?php echo $this->getReviewsSummaryHtml($_product) ?>
25
+ <?php endif; ?>
26
+ <?php echo $this->getPriceHtml($_product, true) ?>
27
+ <?php if($_product->isSaleable()): ?>
28
+ <?php if ( !($_product->getTypeInstance(true)->hasRequiredOptions($_product) || $_product->isGrouped()) ) { ?>
29
+ <p><button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocationAjax('<?php echo $this->getAddToCartUrl($_product) ?>','<?php echo $_product->getId()?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button></p>
30
+ <span id='ajax_loader<?php echo $_product->getId()?>' style='display:none'><img src='<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif')?>'/></span>
31
+ <?php } else { ?>
32
+ <button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="showOptions('<?php echo $_product->getId()?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
33
+ <a href='<?php echo $this->getUrl('ajax/index/options',array('product_id'=>$_product->getId()));?>' class='fancybox' id='fancybox<?php echo $_product->getId()?>' style='display:none'>Test</a>
34
+ <?php } ?>
35
+ <?php else: ?>
36
+ <p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
37
+ <?php endif; ?>
38
+ <div class="desc std">
39
+ <?php echo $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') ?>
40
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped ?>" class="link-learn"><?php echo $this->__('Learn More') ?></a>
41
+ </div>
42
+ <ul class="add-to-links">
43
+ <?php if ($this->helper('wishlist')->isAllow()) : ?>
44
+ <li><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist') ?></a></li>
45
+ <?php endif; ?>
46
+ <?php if($_compareUrl=$this->getAddToCompareUrl($_product)): ?>
47
+ <li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare') ?></a></li>
48
+ <?php endif; ?>
49
+ </ul>
50
+ </div>
51
+ </div>
52
+ </li>
53
+ <?php endforeach; ?>
54
+ </ol>
55
+ <script type="text/javascript">decorateList('products-list', 'none-recursive')</script>
56
+
57
+ <?php else: ?>
58
+
59
+ <?php // Grid Mode ?>
60
+
61
+ <?php $_collectionSize = $_productCollection->count() ?>
62
+ <?php $_columnCount = $this->getColumnCount(); ?>
63
+ <?php $i=0; foreach ($_productCollection as $_product): ?>
64
+ <?php if ($i++%$_columnCount==0): ?>
65
+ <ul class="products-grid">
66
+ <?php endif ?>
67
+ <li class="item<?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?>">
68
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
69
+ <h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></a></h2>
70
+ <?php if($_product->getRatingSummary()): ?>
71
+ <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
72
+ <?php endif; ?>
73
+ <?php echo $this->getPriceHtml($_product, true) ?>
74
+ <div class="actions">
75
+ <?php if($_product->isSaleable()): ?>
76
+ <?php if ( !($_product->getTypeInstance(true)->hasRequiredOptions($_product) || $_product->isGrouped()) ) { ?>
77
+ <button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="showOptions('<?php echo $_product->getId()?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
78
+ <a href='<?php echo $this->getUrl('ajax/index/options',array('product_id'=>$_product->getId()));?>' class='fancybox' id='fancybox<?php echo $_product->getId()?>' style='display:none'></a>
79
+ <span id='ajax_loader<?php echo $_product->getId()?>' style='display:none'><img src='<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif')?>'/></span>
80
+ <?php } else { ?>
81
+ <button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="showOptions('<?php echo $_product->getId()?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
82
+ <a href='<?php echo $this->getUrl('ajax/index/options',array('product_id'=>$_product->getId()));?>' class='fancybox' id='fancybox<?php echo $_product->getId()?>' style='display:none'></a>
83
+
84
+ <?php } ?>
85
+ <?php else: ?>
86
+ <p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
87
+ <?php endif; ?>
88
+ <ul class="add-to-links">
89
+ <?php if ($this->helper('wishlist')->isAllow()) : ?>
90
+ <li><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist') ?></a></li>
91
+ <?php endif; ?>
92
+ <?php if($_compareUrl=$this->getAddToCompareUrl($_product)): ?>
93
+ <li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare') ?></a></li>
94
+ <?php endif; ?>
95
+ </ul>
96
+ </div>
97
+ </li>
98
+ <?php if ($i%$_columnCount==0 || $i==$_collectionSize): ?>
99
+ </ul>
100
+ <?php endif ?>
101
+ <?php endforeach ?>
102
+ <script type="text/javascript">decorateGeneric($$('ul.products-grid'), ['odd','even','first','last'])</script>
103
+ <?php endif; ?>
104
+
105
+ <div class="toolbar-bottom">
106
+ <?php echo $this->getToolbarHtml() ?>
107
+ </div>
108
+ </div>
109
+ <?php endif; ?>
110
+ <script type="text/javascript">
111
+ jQuery.noConflict();
112
+ jQuery(document).ready(function(){
113
+ jQuery('.fancybox').fancybox(
114
+ {
115
+ hideOnContentClick : true,
116
+ width: 580,
117
+ autoDimensions: true,
118
+ type : 'iframe',
119
+ showTitle: false,
120
+ scrolling: 'no',
121
+ onComplete: function(){
122
+ jQuery('#fancybox-frame').load(function() {
123
+ // wait for frame to load and then gets it's height
124
+ jQuery('#fancybox-content').height(jQuery(this).contents().find('body').height()+30);
125
+ jQuery.fancybox.resize();
126
+ });
127
+
128
+ }
129
+ }
130
+ );
131
+ });
132
+ function showOptions(id){
133
+ jQuery('#fancybox'+id).trigger('click');
134
+ }
135
+ function setAjaxData(data,iframe){
136
+ if(data.status == 'ERROR'){
137
+ alert(data.message);
138
+ }else{
139
+ if(jQuery('.block-cart')){
140
+ jQuery('.block-cart').replaceWith(data.sidebar);
141
+ }
142
+ if(jQuery('.header .links')){
143
+ jQuery('.header .links').replaceWith(data.toplink);
144
+ }
145
+ jQuery.fancybox.close();
146
+ }
147
+ }
148
+ function setLocationAjax(url,id){
149
+ url += 'isAjax/1';
150
+ url = url.replace("checkout/cart","ajax/index");
151
+ jQuery('#ajax_loader'+id).show();
152
+ try {
153
+ jQuery.ajax( {
154
+ url : url,
155
+ dataType : 'json',
156
+ success : function(data) {
157
+ jQuery('#ajax_loader'+id).hide();
158
+ setAjaxData(data,false);
159
+ }
160
+ });
161
+ } catch (e) {
162
+ }
163
+ }
164
+ </script>
app/design/frontend/default/shoe_store/template/ajax/checkout/cart/sidebar/default.phtml ADDED
@@ -0,0 +1,137 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_item = $this->getItem();
3
+ $isVisibleProduct = $_item->getProduct()->isVisibleInSiteVisibility();
4
+ $canApplyMsrp = Mage::helper('catalog')->canApplyMsrp($_item->getProduct(), Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type::TYPE_BEFORE_ORDER_CONFIRM);
5
+ ?>
6
+ <li class="item">
7
+ <?php if ($this->hasProductUrl()): ?>
8
+ <a href="<?php echo $this->getProductUrl()?>" title="<?php echo $this->htmlEscape($this->getProductName()) ?>" class="product-image"><img src="<?php echo $this->getProductThumbnail()->resize(50, 50)->setWatermarkSize('30x10'); ?>" width="50" height="50" alt="<?php echo $this->htmlEscape($this->getProductName()) ?>" /></a>
9
+ <?php else: ?>
10
+ <span class="product-image"><img src="<?php echo $this->getProductThumbnail()->resize(50, 50)->setWatermarkSize('30x10'); ?>" width="50" height="50" alt="<?php echo $this->htmlEscape($this->getProductName()) ?>" /></span>
11
+ <?php endif; ?>
12
+ <div class="product-details">
13
+ <a href="<?php
14
+ $params = $this->getRequest()->getParams();
15
+ if($params['isAjax'] == 1){
16
+ $refererUrl = Mage::registry('referrer_url');
17
+ if (empty($refererUrl)) {
18
+ $refererUrl = Mage::getBaseUrl();
19
+ }
20
+ $deleteUrl = $this->getUrl(
21
+ 'checkout/cart/delete',
22
+ array(
23
+ 'id'=>$_item->getId(),
24
+ Mage::registry('current_category')
25
+ )
26
+ );
27
+ }else{
28
+ $deleteUrl = $this->getDeleteUrl();
29
+ }
30
+ echo $deleteUrl;
31
+ ?>" title="<?php echo $this->__('Remove This Item') ?>" onclick="return confirm('<?php echo $this->__('Are you sure you would like to remove this item from the shopping cart?') ?>');" class="btn-remove"><?php echo $this->__('Remove This Item') ?></a>
32
+ <?php if ($isVisibleProduct): ?>
33
+ <a href="<?php echo $this->getConfigureUrl() ?>" title="<?php echo $this->__('Edit item') ?>" class="btn-edit"><?php echo $this->__('Edit item')?></a>
34
+ <?php endif ?>
35
+ <p class="product-name"><?php if ($this->hasProductUrl()): ?><a href="<?php echo $this->getProductUrl() ?>"><?php endif; ?><?php echo $this->htmlEscape($this->getProductName()) ?><?php if ($this->hasProductUrl()): ?></a><?php endif; ?></p>
36
+ <strong><?php echo $this->getQty() ?></strong> x
37
+
38
+ <?php if ($canApplyMsrp): ?>
39
+
40
+ <span class="map-cart-sidebar-item"><?php echo $this->__('See price before order confirmation.'); ?></span>
41
+
42
+ <?php else: ?>
43
+
44
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
45
+ <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
46
+ <?php echo $this->__('Excl. Tax'); ?>:
47
+ <?php endif; ?>
48
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')): ?>
49
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
50
+ <?php else: ?>
51
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
52
+ <?php endif; ?>
53
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
54
+ <br />
55
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales')): ?>
56
+ <small>
57
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
58
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
59
+ <?php endforeach; ?>
60
+ </small>
61
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
62
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
63
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span><br />
64
+ <?php endforeach; ?>
65
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales')): ?>
66
+ <small>
67
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
68
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
69
+ <?php endforeach; ?>
70
+ </small>
71
+ <?php endif; ?>
72
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
73
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
74
+ <?php endif; ?>
75
+ <?php endif; ?>
76
+ <?php endif; ?>
77
+
78
+
79
+
80
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
81
+ <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
82
+ <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
83
+ <br /><?php echo $this->__('Incl. Tax'); ?>:
84
+ <?php endif; ?>
85
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')): ?>
86
+ <?php echo $this->helper('checkout')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?>
87
+ <?php else: ?>
88
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
89
+ <?php endif; ?>
90
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
91
+ <br />
92
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales')): ?>
93
+ <small>
94
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
95
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
96
+ <?php endforeach; ?>
97
+ </small>
98
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
99
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
100
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span><br />
101
+ <?php endforeach; ?>
102
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales')): ?>
103
+ <small>
104
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
105
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
106
+ <?php endforeach; ?>
107
+ </small>
108
+ <?php endif; ?>
109
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
110
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?></span>
111
+ <?php endif; ?>
112
+ <?php endif; ?>
113
+ <?php endif; ?>
114
+
115
+ <?php endif; //Can apply MSRP ?>
116
+
117
+ <?php if ($_options = $this->getOptionList()):?>
118
+ <div class="truncated">
119
+ <div class="truncated_full_value">
120
+ <dl class="item-options">
121
+ <?php foreach ($_options as $_option) : ?>
122
+ <dt><?php echo $this->htmlEscape($_option['label']) ?></dt>
123
+ <dd>
124
+ <?php if (is_array($_option['value'])): ?>
125
+ <?php echo nl2br(implode("\n", $_option['value'])) ?>
126
+ <?php else: ?>
127
+ <?php echo $_option['value'] ?>
128
+ <?php endif; ?>
129
+ </dd>
130
+ <?php endforeach; ?>
131
+ </dl>
132
+ </div>
133
+ <a href="#" onclick="return false;" class="details"><?php echo $this->__('Details') ?></a>
134
+ </div>
135
+ <?php endif; ?>
136
+ </div>
137
+ </li>
app/design/frontend/default/shoe_store/template/ajax/checkout/cart/sidebar/default1.5.phtml ADDED
@@ -0,0 +1,153 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ $_item = $this->getItem();
29
+ $isVisibleProduct = $_item->getProduct()->isVisibleInSiteVisibility();
30
+ ?>
31
+ <li class="item">
32
+ <?php if ($this->hasProductUrl()): ?>
33
+ <a href="<?php echo $this->getProductUrl()?>" title="<?php echo $this->htmlEscape($this->getProductName()) ?>" class="product-image"><img src="<?php echo $this->getProductThumbnail()->resize(50, 50)->setWatermarkSize('30x10'); ?>" width="50" height="50" alt="<?php echo $this->htmlEscape($this->getProductName()) ?>" /></a>
34
+ <?php else: ?>
35
+ <span class="product-image"><img src="<?php echo $this->getProductThumbnail()->resize(50, 50)->setWatermarkSize('30x10'); ?>" width="50" height="50" alt="<?php echo $this->htmlEscape($this->getProductName()) ?>" /></span>
36
+ <?php endif; ?>
37
+ <div class="product-details">
38
+ <a href="<?php
39
+ $params = $this->getRequest()->getParams();
40
+ if($params['isAjax'] == 1){
41
+ $refererUrl = Mage::registry('referrer_url');
42
+ if (empty($refererUrl)) {
43
+ $refererUrl = Mage::getBaseUrl();
44
+ }
45
+ $deleteUrl = $this->getUrl(
46
+ 'checkout/cart/delete',
47
+ array(
48
+ 'id'=>$_item->getId(),
49
+ Mage_Core_Controller_Front_Action::PARAM_NAME_URL_ENCODED => $this->helper('core/url')->getEncodedUrl($refererUrl)
50
+ )
51
+ );
52
+ }else{
53
+ $deleteUrl = $this->getDeleteUrl();
54
+ }
55
+ echo $deleteUrl;
56
+ ?>" title="<?php echo $this->__('Remove This Item') ?>" onclick="return confirm('<?php echo $this->__('Are you sure you would like to remove this item from the shopping cart?') ?>');" class="btn-remove"><?php echo $this->__('Remove This Item') ?></a>
57
+ <?php if ($isVisibleProduct): ?>
58
+ <a href="<?php echo $this->getConfigureUrl() ?>" title="<?php echo $this->__('Edit item') ?>" class="btn-edit"><?php echo $this->__('Edit item')?></a>
59
+ <?php endif ?>
60
+ <p class="product-name"><?php if ($this->hasProductUrl()): ?><a href="<?php echo $this->getProductUrl() ?>"><?php endif; ?><?php echo $this->htmlEscape($this->getProductName()) ?><?php if ($this->hasProductUrl()): ?></a><?php endif; ?></p>
61
+ <strong><?php echo $this->getQty() ?></strong> x
62
+
63
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
64
+ <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
65
+ <?php echo $this->__('Excl. Tax'); ?>:
66
+ <?php endif; ?>
67
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')): ?>
68
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
69
+ <?php else: ?>
70
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
71
+ <?php endif; ?>
72
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
73
+ <br />
74
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales')): ?>
75
+ <small>
76
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
77
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
78
+ <?php endforeach; ?>
79
+ </small>
80
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
81
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
82
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span><br />
83
+ <?php endforeach; ?>
84
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales')): ?>
85
+ <small>
86
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
87
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
88
+ <?php endforeach; ?>
89
+ </small>
90
+ <?php endif; ?>
91
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
92
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
93
+ <?php endif; ?>
94
+ <?php endif; ?>
95
+ <?php endif; ?>
96
+
97
+
98
+
99
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
100
+ <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
101
+ <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
102
+ <br /><?php echo $this->__('Incl. Tax'); ?>:
103
+ <?php endif; ?>
104
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')): ?>
105
+ <?php echo $this->helper('checkout')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?>
106
+ <?php else: ?>
107
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
108
+ <?php endif; ?>
109
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
110
+ <br />
111
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales')): ?>
112
+ <small>
113
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
114
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
115
+ <?php endforeach; ?>
116
+ </small>
117
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
118
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
119
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span><br />
120
+ <?php endforeach; ?>
121
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales')): ?>
122
+ <small>
123
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
124
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
125
+ <?php endforeach; ?>
126
+ </small>
127
+ <?php endif; ?>
128
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
129
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?></span>
130
+ <?php endif; ?>
131
+ <?php endif; ?>
132
+ <?php endif; ?>
133
+ <?php if ($_options = $this->getOptionList()):?>
134
+ <div class="truncated">
135
+ <div class="truncated_full_value">
136
+ <dl class="item-options">
137
+ <?php foreach ($_options as $_option) : ?>
138
+ <dt><?php echo $this->htmlEscape($_option['label']) ?></dt>
139
+ <dd>
140
+ <?php if (is_array($_option['value'])): ?>
141
+ <?php echo nl2br(implode("\n", $_option['value'])) ?>
142
+ <?php else: ?>
143
+ <?php echo $_option['value'] ?>
144
+ <?php endif; ?>
145
+ </dd>
146
+ <?php endforeach; ?>
147
+ </dl>
148
+ </div>
149
+ <a href="#" onclick="return false;" class="details"><?php echo $this->__('Details') ?></a>
150
+ </div>
151
+ <?php endif; ?>
152
+ </div>
153
+ </li>
app/design/frontend/default/shoe_store/template/bestseller/bestseller.phtml ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ *
4
+ * Edition :- Community
5
+ * Developed By :- virendra Kumar Sharma
6
+ *
7
+ */
8
+ ?>
9
+ <?php $_helper = $this->helper('catalog/output'); if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
10
+ <div class="block block-related">
11
+ <div class="block-title">
12
+ <strong><span><?php echo $this->__('Best Sellers') ?></span></strong>
13
+ </div>
14
+ <div class="block-content">
15
+ <ol class="mini-products-list" id="block-mostviewed">
16
+ <?php $i=1; foreach ($_products->getItems() as $_item): $i++; if($i==5){break;} ?>
17
+ <li class="item">
18
+ <div class="product" style="margin-left: 0px;">
19
+ <a href="<?php echo $_item->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_item->getName()) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_item, 'thumbnail') ?>" alt="<?php echo $this->htmlEscape($_item->getName()) ?>" /></a>
20
+ <div class="product-details">
21
+ <a href="<?php echo $_item->getProductUrl() ?>"><?php echo $this->htmlEscape($_item->getName()) ?></a><br/>
22
+ <?php $product = Mage::getModel('catalog/product')->load($_item->getId());
23
+ $_description = $product->getShortDescription();
24
+ if(strlen($_description) <= 40)
25
+ {
26
+ echo $_description;
27
+ }
28
+ else{
29
+ echo substr($_description,0,40).'...';
30
+ }
31
+ /*$Price = $Product->getPrice();
32
+ $FinalPrice = $Product->getFinalPrice();*/?>
33
+
34
+ </div>
35
+ <div class="product-details">
36
+ <?php
37
+ $price = $product->getPrice();
38
+ $webprice = $product->getwebprice();
39
+ $specialprice = $product->getFinalPrice();
40
+ if($specialprice==$price)
41
+ {?>
42
+ <span class="price">Price <span class="price_color">$<?php echo number_format($price,2);?></span></span>
43
+ <?php } else { ?>
44
+ <div class="regular-price">
45
+ <span class="price">$ <?php echo number_format($price,2); ?></span>
46
+ </div>
47
+ <div class="special-price">
48
+ <span class="price">$ <?php echo number_format($specialprice,2); ?> </span>
49
+ </div>
50
+ <?php } ?>
51
+ </div>
52
+ </div>
53
+ </li>
54
+ <?php endforeach ?>
55
+ </ol>
56
+ <script type="text/javascript">decorateList('block-mostviewed', 'none-recursive')</script>
57
+ </div>
58
+ </div>
59
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/bestseller/bestseller1.phtml ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ *
4
+ * Edition :- Community
5
+ * Developed By :- virendra Kumar Sharma
6
+ *
7
+ */
8
+ ?>
9
+ <?php $_helper = $this->helper('catalog/output'); if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
10
+ <div class="block block-related">
11
+ <div class="block-title">
12
+ <strong><span><?php echo $this->__('Best Sellers') ?></span></strong>
13
+ </div>
14
+ <div class="block-content">
15
+ <ol class="mini-products-list" id="block-mostviewed">
16
+ <?php $i=1; foreach ($_products->getItems() as $_item): ?>
17
+ <li class="item">
18
+ <div class="product" style="margin-left: 0px;">
19
+ <a href="<?php echo $_item->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_item->getName()) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_item, 'thumbnail')->resize(50) ?>" width="50" height="50" alt="<?php echo $this->htmlEscape($_item->getName()) ?>" /></a>
20
+ <div class="product-details">
21
+ <p class="product-name"><a href="<?php echo $_item->getProductUrl() ?>"><?php echo $this->htmlEscape($_item->getName()) ?></a></p>
22
+ <?php $product = Mage::getModel('catalog/product')->load($_item->getId());
23
+ $_description = $product->getShortDescription();
24
+ if(strlen($_description) <= 50)
25
+ {
26
+ echo $_description;
27
+ }
28
+ else{
29
+ echo substr($_description,0,50).'...';
30
+ }
31
+ /*$Price = $Product->getPrice();
32
+ $FinalPrice = $Product->getFinalPrice();*/?>
33
+
34
+ </div>
35
+ <div class="product-details">
36
+ <?php
37
+ $price = $product->getPrice();
38
+ $webprice = $product->getwebprice();
39
+ $specialprice = $product->getFinalPrice();
40
+ if($specialprice==$price)
41
+ {?>
42
+ <span class="price">Price $<?php echo number_format($price,2);?></span>
43
+ <?php } else { ?>
44
+ <div class="regular-price">
45
+ <span class="price">$ <?php echo number_format($price,2); ?></span>
46
+ </div>
47
+ <div class="special-price">
48
+ <span class="price">$ <?php echo number_format($specialprice,2); ?> </span>
49
+ </div>
50
+ <?php } ?>
51
+ </div>
52
+ </div>
53
+ </li>
54
+ <?php endforeach ?>
55
+ </ol>
56
+ <script type="text/javascript">decorateList('block-mostviewed', 'none-recursive')</script>
57
+ </div>
58
+ </div>
59
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/bestseller/block_bestseller.phtml ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ *
4
+ * Edition :- Community
5
+ * Developed By :- virendra Kumar Sharma
6
+ *
7
+ */
8
+ ?>
9
+ <?php if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
10
+ <div class="block block-related">
11
+ <div class="block-title">
12
+ <strong><span><?php echo $this->__('Best Sellers') ?></span></strong>
13
+ </div>
14
+ <div class="block-content">
15
+ <ol class="mini-products-list" id="block-mostviewed">
16
+ <?php $i=1; foreach ($_products->getItems() as $_item): ?>
17
+ <li class="item">
18
+ <div class="product" style="margin-left: 0px;">
19
+ <a href="<?php echo $_item->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_item->getName()) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_item, 'thumbnail')->resize(50) ?>" width="50" height="50" alt="<?php echo $this->htmlEscape($_item->getName()) ?>" /></a>
20
+ <div class="product-details">
21
+ <p class="product-name"><a href="<?php echo $_item->getProductUrl() ?>"><?php echo $this->htmlEscape($_item->getName()) ?></a></p>
22
+ </div>
23
+ <div class="desc std">
24
+ <?php echo $_helper->productAttribute($_item, $_item->getShortDescription(), 'short_description') ?>
25
+ <a href="<?php echo $_item->getProductUrl() ?>" title="<?php echo $_itemNameStripped ?>" class="link-learn"><?php echo $this->__('Learn More') ?></a>
26
+ </div>
27
+ </div>
28
+ </li>
29
+ <?php endforeach ?>
30
+ </ol>
31
+ <script type="text/javascript">decorateList('block-mostviewed', 'none-recursive')</script>
32
+ </div>
33
+ </div>
34
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/catalog/navigation/top.phtml ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Top menu for store
30
+ *
31
+ * @see Mage_Catalog_Block_Navigation
32
+ */
33
+ ?>
34
+ <?php
35
+ /**
36
+ * $this->renderCategoriesMenuHtml() supports optional arguments:
37
+ * int Level number for list item class to start from
38
+ * string Extra class of outermost list items
39
+ * string If specified wraps children list in div with this class
40
+ */
41
+ ?>
42
+ <?php $_menu = $this->renderCategoriesMenuHtml(0,'level-top') ?>
43
+ <?php if($_menu): ?>
44
+ <div class="nav-container">
45
+ <ul id="nav">
46
+ <?php echo $_menu ?>
47
+ </ul>
48
+ </div>
49
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/catalog/product/compare/sidebar.phtml ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ /* @var $this Mage_Catalog_Block_Product_Compare_Sidebar */
27
+ ?>
28
+ <?php
29
+ $_helper = $this->helper('catalog/product_compare');
30
+ $_items = $_helper->getItemCount() > 0 ? $_helper->getItemCollection() : null;
31
+ ?>
32
+ <div class="block block-list block-compare">
33
+ <div class="block-title">
34
+ <strong><span><?php echo $this->__('Compare Products') ?>
35
+ <?php if($_helper->getItemCount() > 0): ?>
36
+ <small><?php echo $this->__('(%d)', $_helper->getItemCount()) ?></small>
37
+ <?php endif; ?>
38
+ </span></strong>
39
+ </div>
40
+ <div class="block-content">
41
+ <?php if($_helper->getItemCount() > 0): ?>
42
+ <ol id="compare-items">
43
+ <?php foreach($_items as $_index => $_item): ?>
44
+ <li class="item">
45
+ <input type="hidden" class="compare-item-id" value="<?php echo $_item->getId() ?>" />
46
+ <a href="<?php echo $_helper->getRemoveUrl($_item) ?>" title="<?php echo $this->__('Remove This Item') ?>" class="btn-remove" onclick="return confirm('<?php echo $this->__('Are you sure you would like to remove this item from the compare products?') ?>');"><?php echo $this->__('Remove This Item') ?></a>
47
+ <p class="product-name"><a href="<?php echo $this->getProductUrl($_item) ?>"><?php echo $this->helper('catalog/output')->productAttribute($_item, $_item->getName(), 'name') ?></a></p>
48
+ </li>
49
+ <?php endforeach; ?>
50
+ </ol>
51
+ <script type="text/javascript">decorateList('compare-items')</script>
52
+ <div class="actions">
53
+ <a href="<?php echo $_helper->getClearListUrl() ?>" onclick="return confirm('<?php echo $this->__('Are you sure you would like to remove all products from your comparison?') ?>');"><?php echo $this->__('Clear All') ?></a>
54
+ <button type="button" title="<?php echo $this->__('Compare') ?>" class="button" onclick="popWin('<?php echo $_helper->getListUrl() ?>','compare','top:0,left:0,width=820,height=600,resizable=yes,scrollbars=yes')"><span><span><?php echo $this->__('Compare') ?></span></span></button>
55
+ </div>
56
+ <?php else: ?>
57
+ <p class="empty"><?php echo $this->__('You have no items to compare.') ?></p>
58
+ <?php endif; ?>
59
+ </div>
60
+ <div class="compare_image"></div>
61
+ </div>
app/design/frontend/default/shoe_store/template/catalog/product/list.phtml ADDED
@@ -0,0 +1,137 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Product list template
30
+ *
31
+ * @see Mage_Catalog_Block_Product_List
32
+ */
33
+ ?>
34
+ <?php
35
+ $_productCollection=$this->getLoadedProductCollection();
36
+ $_helper = $this->helper('catalog/output');
37
+ ?>
38
+ <?php if(!$_productCollection->count()): ?>
39
+ <p class="note-msg"><?php echo $this->__('There are no products matching the selection.') ?></p>
40
+ <?php else: ?>
41
+ <div class="category-products row-fluid">
42
+ <?php echo $this->getToolbarHtml() ?>
43
+ <div class="page-title category-title innerheading">
44
+ <h1><?php echo Mage::getModel('catalog/layer')->getCurrentCategory()->getName(); ?> </h1>
45
+ </div>
46
+ <?php // List mode ?>
47
+ <?php if($this->getMode()!='grid'): ?>
48
+ <?php $_iterator = 0; ?>
49
+ <ol class="products-list" id="products-list">
50
+ <?php foreach ($_productCollection as $_product): ?>
51
+ <li class="item<?php if( ++$_iterator == sizeof($_productCollection) ): ?> last<?php endif; ?> row-fluid">
52
+ <?php // Product Image ?>
53
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image span4"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(301,214) ?>" width="301" height="214" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
54
+ <?php // Product description ?>
55
+ <div class="product-shop span7">
56
+ <div class="f-fix">
57
+ <?php $_productNameStripped = $this->stripTags($_product->getName(), null, true); ?>
58
+ <h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped; ?>"><?php echo $_helper->productAttribute($_product, $_product->getName() , 'name'); ?></a></h2>
59
+ <?php if($_product->getRatingSummary()): ?>
60
+ <?php echo $this->getReviewsSummaryHtml($_product) ?>
61
+ <?php endif; ?>
62
+ <?php echo $this->getPriceHtml($_product, true) ?>
63
+ <?php /*if($_product->isSaleable()): ?>
64
+ <p><button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button></p>
65
+ <?php else: ?>
66
+ <p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
67
+ <?php endif; */?>
68
+ <a class="details" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo 'Details' ?>"><?php echo 'Details'; ?></a>
69
+ <div class="desc std">
70
+ <?php echo $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') ?>
71
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_productNameStripped ?>" class="link-learn"><?php echo $this->__('Learn More') ?></a>
72
+ </div>
73
+ <ul class="add-to-links">
74
+ <?php if ($this->helper('wishlist')->isAllow()) : ?>
75
+ <li><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist') ?></a></li>
76
+ <?php endif; ?>
77
+ <?php if($_compareUrl=$this->getAddToCompareUrl($_product)): ?>
78
+ <li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare') ?></a></li>
79
+ <?php endif; ?>
80
+ </ul>
81
+ </div>
82
+ </div>
83
+ </li>
84
+ <?php endforeach; ?>
85
+ </ol>
86
+ <script type="text/javascript">decorateList('products-list', 'none-recursive')</script>
87
+
88
+ <?php else: ?>
89
+
90
+ <?php // Grid Mode ?>
91
+
92
+ <?php $_collectionSize = $_productCollection->count() ?>
93
+ <?php $_columnCount = $this->getColumnCount(); $_columnCount = 3; ?>
94
+ <?php $i=0; foreach ($_productCollection as $_product): ?>
95
+ <?php if ($i++%$_columnCount==0): ?>
96
+ <ul class="products-grid">
97
+ <?php endif ?>
98
+ <li class="item<?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?> span4">
99
+ <div class="list_item_pad">
100
+ <h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_product->getName(); ?><span> <?php echo $_product->getProduct_color_text() ?></span></a></h2>
101
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(301,214) ?>" width="301" height="214" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
102
+ <p class="short_desc"> <?php $_description = $_product->getShortDescription();
103
+ if(strlen($_description) <= 50)
104
+ {
105
+ echo $_description;
106
+ }
107
+ else{
108
+ echo substr($_description,0,50).'...';
109
+ }?></p>
110
+ <?php if($_product->getRatingSummary()): ?>
111
+ <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
112
+ <?php endif; ?>
113
+ <?php echo $this->getPriceHtml($_product, true) ?>
114
+ <div class="actions">
115
+ <?php /*if($_product->isSaleable()): ?>
116
+ <button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
117
+ <?php else: ?>
118
+ <p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
119
+ <?php endif; */?>
120
+ <a class="details" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo 'Details' ?>"><?php echo 'Details'; ?></a>
121
+ </div>
122
+ <div class="box-shadow"></div>
123
+ <div class="clear"></div>
124
+ </div>
125
+ </li>
126
+ <?php if ($i%$_columnCount==0 || $i==$_collectionSize): ?>
127
+ </ul>
128
+ <?php endif ?>
129
+ <?php endforeach ?>
130
+ <script type="text/javascript">decorateGeneric($$('ul.products-grid'), ['odd','even','first','last'])</script>
131
+ <?php endif; ?>
132
+
133
+ <div class="toolbar-bottom">
134
+ <?php echo $this->getToolbarHtml() ?>
135
+ </div>
136
+ </div>
137
+ <?php endif; ?>
app/design/frontend/default/shoe_store/template/catalog/product/list/toolbar.phtml ADDED
@@ -0,0 +1,102 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Product list toolbar
30
+ *
31
+ * @see Mage_Catalog_Block_Product_List_Toolbar
32
+ */
33
+ ?>
34
+ <?php if($this->getCollection()->getSize()): ?>
35
+ <div class="toolbar">
36
+ <?php if( $this->isExpanded() ): ?>
37
+ <div class="sorter span6">
38
+
39
+ <div class="sort-by">
40
+ <label><?php echo $this->__('Sort By') ?>:</label>
41
+ <select onchange="setLocation(this.value)">
42
+ <?php foreach($this->getAvailableOrders() as $_key=>$_order): ?>
43
+ <option value="<?php echo $this->getOrderUrl($_key, 'asc') ?>"<?php if($this->isOrderCurrent($_key)): ?> selected="selected"<?php endif; ?>>
44
+ <?php echo $this->__($_order) ?>
45
+ </option>
46
+ <?php endforeach; ?>
47
+ </select>
48
+ <?php if($this->getCurrentDirection() == 'desc'): ?>
49
+ <a href="<?php echo $this->getOrderUrl(null, 'asc') ?>" title="<?php echo $this->__('Set Ascending Direction') ?>"><img src="<?php echo $this->getSkinUrl('images/shoe_store/i_desc_arrow.gif') ?>" alt="<?php echo $this->__('Set Ascending Direction') ?>" class="v-base_line" /></a>
50
+ <?php else: ?>
51
+ <a href="<?php echo $this->getOrderUrl(null, 'desc') ?>" title="<?php echo $this->__('Set Descending Direction') ?>"><img src="<?php echo $this->getSkinUrl('images/shoe_store/i_asc_arrow.gif') ?>" alt="<?php echo $this->__('Set Descending Direction') ?>" class="v-base_line" /></a>
52
+ <?php endif; ?>
53
+ </div>
54
+
55
+ <?php if( $this->isEnabledViewSwitcher() ): ?>
56
+ <p class="view-mode">
57
+ <?php $_modes = $this->getModes(); ?>
58
+ <?php if($_modes && count($_modes)>1): ?>
59
+ <label><?php echo $this->__('View as') ?>:</label>
60
+ <?php foreach ($this->getModes() as $_code=>$_label): ?>
61
+ <?php if($this->isModeActive($_code)): ?>
62
+ <strong title="<?php echo $_label ?>" class="<?php echo strtolower($_code); ?>"><?php echo $_label ?></strong>&nbsp;
63
+ <?php else: ?>
64
+ <a href="<?php echo $this->getModeUrl($_code) ?>" title="<?php echo $_label ?>" class="<?php echo strtolower($_code); ?>"><?php echo $_label ?></a>&nbsp;
65
+ <?php endif; ?>
66
+ <?php endforeach; ?>
67
+ <?php endif; ?>
68
+ </p>
69
+ <?php endif; ?>
70
+
71
+
72
+ </div>
73
+ <?php endif; ?>
74
+
75
+
76
+ <div class="pager span6">
77
+ <!--<p class="amount span4">
78
+ <?php if($this->getLastPageNum()>1): ?>
79
+ <?php echo $this->__('Items %s to %s of %s total', $this->getFirstNum(), $this->getLastNum(), $this->getTotalNum()) ?>
80
+ <?php else: ?>
81
+ <strong><?php echo $this->__('%s Item(s)', $this->getTotalNum()) ?></strong>
82
+ <?php endif; ?>
83
+ </p>-->
84
+
85
+ <div class="limiter">
86
+ <label><?php echo $this->__('Show') ?></label>
87
+ <select onchange="setLocation(this.value)">
88
+ <?php foreach ($this->getAvailableLimit() as $_key=>$_limit): ?>
89
+ <option value="<?php echo $this->getLimitUrl($_key) ?>"<?php if($this->isLimitCurrent($_key)): ?> selected="selected"<?php endif ?>>
90
+ <?php echo $_limit ?>
91
+ </option>
92
+ <?php endforeach; ?>
93
+ </select> <?php echo $this->__('per page') ?>
94
+ </div>
95
+
96
+ <?php echo $this->getPagerHtml() ?>
97
+
98
+ </div>
99
+
100
+ <div class="clear"></div>
101
+ </div>
102
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/catalog/product/list/toolbar.phtml~ ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Product list toolbar
30
+ *
31
+ * @see Mage_Catalog_Block_Product_List_Toolbar
32
+ */
33
+ ?>
34
+ <?php if($this->getCollection()->getSize()): ?>
35
+ <div class="toolbar">
36
+ <div class="pager">
37
+ <p class="amount span4">
38
+ <?php if($this->getLastPageNum()>1): ?>
39
+ <?php echo $this->__('Items %s to %s of %s total', $this->getFirstNum(), $this->getLastNum(), $this->getTotalNum()) ?>
40
+ <?php else: ?>
41
+ <strong><?php echo $this->__('%s Item(s)', $this->getTotalNum()) ?></strong>
42
+ <?php endif; ?>
43
+ </p>
44
+
45
+ <div class="limiter span3">
46
+ <label><?php echo $this->__('Show') ?></label>
47
+ <select onchange="setLocation(this.value)">
48
+ <?php foreach ($this->getAvailableLimit() as $_key=>$_limit): ?>
49
+ <option value="<?php echo $this->getLimitUrl($_key) ?>"<?php if($this->isLimitCurrent($_key)): ?> selected="selected"<?php endif ?>>
50
+ <?php echo $_limit ?>
51
+ </option>
52
+ <?php endforeach; ?>
53
+ </select> <?php echo $this->__('per page') ?>
54
+ </div>
55
+
56
+ <?php echo $this->getPagerHtml() ?>
57
+
58
+ </div>
59
+
60
+ <?php if( $this->isExpanded() ): ?>
61
+ <div class="sorter">
62
+ <?php if( $this->isEnabledViewSwitcher() ): ?>
63
+ <p class="view-mode span3">
64
+ <?php $_modes = $this->getModes(); ?>
65
+ <?php if($_modes && count($_modes)>1): ?>
66
+ <label><?php echo $this->__('View as') ?>:</label>
67
+ <?php foreach ($this->getModes() as $_code=>$_label): ?>
68
+ <?php if($this->isModeActive($_code)): ?>
69
+ <strong title="<?php echo $_label ?>" class="<?php echo strtolower($_code); ?>"><?php echo $_label ?></strong>&nbsp;
70
+ <?php else: ?>
71
+ <a href="<?php echo $this->getModeUrl($_code) ?>" title="<?php echo $_label ?>" class="<?php echo strtolower($_code); ?>"><?php echo $_label ?></a>&nbsp;
72
+ <?php endif; ?>
73
+ <?php endforeach; ?>
74
+ <?php endif; ?>
75
+ </p>
76
+ <?php endif; ?>
77
+
78
+ <div class="sort-by span3">
79
+ <label><?php echo $this->__('Sort By') ?></label>
80
+ <select onchange="setLocation(this.value)">
81
+ <?php foreach($this->getAvailableOrders() as $_key=>$_order): ?>
82
+ <option value="<?php echo $this->getOrderUrl($_key, 'asc') ?>"<?php if($this->isOrderCurrent($_key)): ?> selected="selected"<?php endif; ?>>
83
+ <?php echo $this->__($_order) ?>
84
+ </option>
85
+ <?php endforeach; ?>
86
+ </select>
87
+ <?php if($this->getCurrentDirection() == 'desc'): ?>
88
+ <a href="<?php echo $this->getOrderUrl(null, 'asc') ?>" title="<?php echo $this->__('Set Ascending Direction') ?>"><img src="<?php echo $this->getSkinUrl('images/i_desc_arrow.gif') ?>" alt="<?php echo $this->__('Set Ascending Direction') ?>" class="v-middle" /></a>
89
+ <?php else: ?>
90
+ <a href="<?php echo $this->getOrderUrl(null, 'desc') ?>" title="<?php echo $this->__('Set Descending Direction') ?>"><img src="<?php echo $this->getSkinUrl('images/i_asc_arrow.gif') ?>" alt="<?php echo $this->__('Set Descending Direction') ?>" class="v-middle" /></a>
91
+ <?php endif; ?>
92
+ </div>
93
+ </div>
94
+ <?php endif; ?>
95
+ </div>
96
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/catalog/product/new.phtml ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('brands')->toHtml() ?>
28
+ <?php // if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
29
+ <h2 class="subtitle newproducts_subtitle"><?php echo $this->__('New Products') ?></h2>
30
+ <div class="newproducts_container">
31
+ <div class="newproducts row-fluid">
32
+ <?php /*$_columnCount = $this->getColumnCount(); $_columnCount = 3;?>
33
+ <?php $i=0;foreach ($_products->getItems() as $_product): ?>
34
+ <?php if ($i++%$_columnCount==0):?>
35
+ <ul class="products-grid">
36
+ <?php endif ?>
37
+ <li class="item<?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?> span4">
38
+ <h3 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_product->getName() ?>"><?php echo $_product->getName() ?><span> <?php echo $_product->getProduct_color_text() ?></span></a></h3>
39
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_product->getName()) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(301,214) ?>" width="301" height="214" alt="<?php echo $this->htmlEscape($_product->getName()) ?>" /></a>
40
+ <p class="short_desc"> <?php $_description = $_product->getShortDescription();
41
+ if(strlen($_description) <= 50)
42
+ {
43
+ echo $_description;
44
+ }
45
+ else{
46
+ echo substr($_description,0,50).'...';
47
+ }?></p>
48
+ <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
49
+ <?php echo $this->getPriceHtml($_product, true, '-new') ?>
50
+ <div class="actions">
51
+
52
+ <a class="details" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo 'Details' ?>"><?php echo 'Details'; ?></a>
53
+ </div>
54
+ <div class="box-shadow"></div>
55
+ </li>
56
+ <?php if ($i%$_columnCount==0 || $i==count($_products)): ?>
57
+ </ul>
58
+ <?php endif ?>
59
+ <?php endforeach; */?>
60
+ <!--<script type="text/javascript">decorateGeneric($$('ul.products-grid'), ['odd','even','first','last'])</script>-->
61
+ <?php $catid=8 ;?>
62
+ <?php
63
+ $category = new Mage_Catalog_Model_Category();
64
+ $category->load($catid); //My cat id is 10
65
+ $prodCollection = $category->getProductCollection();
66
+ $_helper = $this->helper('catalog/output');
67
+ ?>
68
+ <ul class="products-grid">
69
+ <?
70
+ foreach ($prodCollection as $_product) {
71
+ ?>
72
+ <li class="item span4">
73
+ <h3 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $_product->getName() ?>"><?php echo $_product->getName() ?><span> <?php echo $_product->getProduct_color_text() ?></span></a></h3>
74
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_product->getName()) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(301,214) ?>" width="301" height="214" alt="<?php echo $this->htmlEscape($_product->getName()) ?>" /></a>
75
+ <p class="short_desc"> <?php $_description = $_product->getShortDescription();
76
+ if(strlen($_description) <= 50)
77
+ {
78
+ echo $_description;
79
+ }
80
+ else{
81
+ echo substr($_description,0,50).'...';
82
+ }?></p>
83
+ <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
84
+ <?php echo $this->getPriceHtml($_product, true, '-new') ?>
85
+ <div class="actions">
86
+
87
+ <a class="details" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo 'Details' ?>"><?php echo 'Details'; ?></a>
88
+ </div>
89
+ <div class="box-shadow"></div>
90
+ <?php
91
+ //$prdIds[] = $product->getId(); ///Store all th eproduct id in $prdIds array
92
+ }?>
93
+ </ul>
94
+ </div>
95
+ </div>
96
+ <?php // endif; ?>
app/design/frontend/default/shoe_store/template/catalog/product/new_products.phtml ADDED
@@ -0,0 +1,170 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Product list template
30
+ *
31
+ * @see Mage_Catalog_Block_Product_List
32
+ */
33
+ ?>
34
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('brands')->toHtml() ?>
35
+ <?php // if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
36
+ <h2 class="subtitle newproducts_subtitle"><?php echo $this->__('New Products') ?></h2>
37
+ <div class="newproducts_container">
38
+ <div class="newproducts row-fluid">
39
+ <?php
40
+ $_productCollection = Mage::getModel('catalog/product')
41
+ ->getCollection()
42
+ ->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
43
+ ->addAttributeToSelect('*')
44
+ ->addAttributeToFilter('category_id', array(
45
+ array('finset' => '8'))
46
+ )
47
+ ->addAttributeToSort('created_at', 'desc');
48
+ ?>
49
+ <ul class="products-grid span4">
50
+ <?php $i=0; foreach ($_productCollection as $_product) { $i++; if($i>=3){ break; } ?>
51
+ <li class="item">
52
+ <?php if($i==1) { ?><h3 class="product-name"><a title="Motorola" href="<?php echo $_product->getProductUrl() ?>">
53
+ Kids
54
+ <span> Shoes</span>
55
+ </a>
56
+ </h3><?php } ?>
57
+ <!--<h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_product->getName(); ?><span> <?php echo $_product->getProduct_color_text() ?></span></a></h2>-->
58
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(301,214) ?>" width="301" height="214" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
59
+ <p class="short_desc"> <?php $_description = $_product->getShortDescription();
60
+ if(strlen($_description) <= 50)
61
+ {
62
+ echo $_description;
63
+ }
64
+ else{
65
+ echo substr($_description,0,50).'...';
66
+ }?></p>
67
+ <?php if($_product->getRatingSummary()): ?>
68
+ <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
69
+ <?php endif; ?>
70
+ <?php echo $this->getPriceHtml($_product, true) ?>
71
+ <div class="actions">
72
+
73
+ <a class="details" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo 'Details' ?>"><?php echo 'Details'; ?></a>
74
+ </div>
75
+ <div class="clear"></div>
76
+ <?php if($i==1) { ?>
77
+ <div class="box-shadow"></div>
78
+ <?php } ?>
79
+ </li>
80
+ <?php } ?>
81
+ </ul>
82
+ <?php
83
+ $_productCollection = Mage::getModel('catalog/product')
84
+ ->getCollection()
85
+ ->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
86
+ ->addAttributeToSelect('*')
87
+ ->addAttributeToFilter('category_id', array(
88
+ array('finset' => '5'))
89
+ )
90
+ ->addAttributeToSort('created_at', 'desc');
91
+ ?>
92
+ <ul class="products-grid span4">
93
+ <?php $i=0; foreach ($_productCollection as $_product) { $i++; if($i>=3){ break; } ?>
94
+ <li class="item">
95
+ <?php if($i==1) { ?><h3 class="product-name"><a title="Motorola" href="<?php echo $_product->getProductUrl() ?>">
96
+ Men
97
+ <span> Shoes</span>
98
+ </a>
99
+ </h3><?php } ?>
100
+ <!--<h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_product->getName(); ?><span> <?php echo $_product->getProduct_color_text() ?></span></a></h2>-->
101
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(301,214) ?>" width="301" height="214" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
102
+ <p class="short_desc"> <?php $_description = $_product->getShortDescription();
103
+ if(strlen($_description) <= 50)
104
+ {
105
+ echo $_description;
106
+ }
107
+ else{
108
+ echo substr($_description,0,50).'...';
109
+ }?></p>
110
+ <?php if($_product->getRatingSummary()): ?>
111
+ <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
112
+ <?php endif; ?>
113
+ <?php echo $this->getPriceHtml($_product, true) ?>
114
+ <div class="actions">
115
+
116
+ <a class="details" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo 'Details' ?>"><?php echo 'Details'; ?></a>
117
+ </div>
118
+ <div class="clear"></div>
119
+ <?php if($i==1) { ?>
120
+ <div class="box-shadow"></div>
121
+ <?php } ?>
122
+ </li>
123
+ <?php } ?>
124
+ </ul>
125
+ <?php
126
+ $_productCollection = Mage::getModel('catalog/product')
127
+ ->getCollection()
128
+ ->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
129
+ ->addAttributeToSelect('*')
130
+ ->addAttributeToFilter('category_id', array(
131
+ array('finset' => '6'))
132
+ )
133
+ ->addAttributeToSort('created_at', 'desc');
134
+ ?>
135
+ <ul class="products-grid last span4">
136
+ <?php $i=0; foreach ($_productCollection as $_product) { $i++; if($i>=3){ break; } ?>
137
+ <li class="item">
138
+ <?php if($i==1) { ?><h3 class="product-name"><a title="Motorola" href="<?php echo $_product->getProductUrl() ?>">
139
+ Women
140
+ <span> Shoes</span>
141
+ </a>
142
+ </h3><?php } ?>
143
+ <!--<h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_product->getName(); ?><span> <?php echo $_product->getProduct_color_text() ?></span></a></h2>-->
144
+ <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(301,214) ?>" width="301" height="214" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
145
+ <p class="short_desc"> <?php $_description = $_product->getShortDescription();
146
+ if(strlen($_description) <= 50)
147
+ {
148
+ echo $_description;
149
+ }
150
+ else{
151
+ echo substr($_description,0,50).'...';
152
+ }?></p>
153
+ <?php if($_product->getRatingSummary()): ?>
154
+ <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
155
+ <?php endif; ?>
156
+ <?php echo $this->getPriceHtml($_product, true) ?>
157
+ <div class="actions">
158
+
159
+ <a class="details" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo 'Details' ?>"><?php echo 'Details'; ?></a>
160
+ </div>
161
+ <div class="clear"></div>
162
+ <?php if($i==1) { ?>
163
+ <div class="box-shadow"></div>
164
+ <?php } ?>
165
+ </li>
166
+ <?php } ?>
167
+ </ul>
168
+ </div>
169
+ </div>
170
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('browse_all')->toHtml() ?>
app/design/frontend/default/shoe_store/template/catalog/product/view.phtml ADDED
@@ -0,0 +1,194 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /**
28
+ * Product view template
29
+ *
30
+ * @see Mage_Catalog_Block_Product_View
31
+ * @see Mage_Review_Block_Product_View
32
+ */
33
+ ?>
34
+ <?php $_helper = $this->helper('catalog/output'); ?>
35
+ <?php $_product = $this->getProduct(); ?>
36
+ <script type="text/javascript">
37
+ var optionsPrice = new Product.OptionsPrice(<?php echo $this->getJsonConfig() ?>);
38
+ </script>
39
+ <div id="messages_product_view"><?php echo $this->getMessagesBlock()->getGroupedHtml() ?></div>
40
+ <div class="product-view row-fluid">
41
+ <div class="product-essential">
42
+ <form action="<?php echo $this->getSubmitUrl($_product) ?>" method="post" id="product_addtocart_form"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>>
43
+ <div class="no-display">
44
+ <input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
45
+ <input type="hidden" name="related_product" id="related-products-field" value="" />
46
+ </div>
47
+
48
+ <div class="product-img-box span4">
49
+ <?php echo $this->getChildHtml('media') ?>
50
+ </div>
51
+
52
+ <div class="product-shop span8">
53
+ <div class="poduct_shop_padding">
54
+ <div class="product-name">
55
+ <h1><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></h1>
56
+ </div>
57
+ <div class="review_email_con">
58
+ <?php echo $this->getReviewsSummaryHtml($_product, false, true)?>
59
+ <?php if ($this->canEmailToFriend()): ?>
60
+ <p class="email-friend"><a href="<?php echo $this->helper('catalog/product')->getEmailToFriendUrl($_product) ?>"><?php echo $this->__('Email to a Friend') ?></a></p>
61
+ <?php endif; ?>
62
+ </div>
63
+
64
+ <?php echo $this->getChildHtml('alert_urls') ?>
65
+ <div class="topprice_con">
66
+ <?php echo $this->getChildHtml('product_type_data') ?>
67
+ <?php echo $this->getTierPriceHtml() ?>
68
+ </div>
69
+ <div class="clear"></div>
70
+ <?php echo $this->getChildHtml('extrahint') ?>
71
+ <div class="add_to_box_con">
72
+ <div class="qty_con">
73
+ <?php if (!$this->hasOptions()):?>
74
+ <div class="add-to-box removeaddcart_con">
75
+ <?php if($_product->isSaleable()): ?>
76
+ <?php echo $this->getChildHtml('addtocart') ?>
77
+ <?php /*if( $this->helper('wishlist')->isAllow() || $_compareUrl=$this->helper('catalog/product_compare')->getAddUrl($_product)): ?>
78
+ <span class="or"><?php echo $this->__('OR') ?></span>
79
+ <?php endif;*/ ?>
80
+ <?php endif; ?>
81
+ <?php // echo $this->getChildHtml('addto') ?>
82
+ </div>
83
+ <?php echo $this->getChildHtml('extra_buttons') ?>
84
+ <?php elseif (!$_product->isSaleable()): ?>
85
+ <!--<div class="add-to-box">
86
+ <?php echo $this->getChildHtml('addto') ?>
87
+ </div>-->
88
+ <?php endif; ?>
89
+ </div>
90
+ <div class="sku_stock_con">
91
+ <label><?php echo $this->__('Product code'); ?>:</label><span><?php echo $_product->getSku() ?></span>
92
+ <?php echo $this->getChildHtml('product_type_data') ?>
93
+ </div>
94
+ <div class="clear"></div>
95
+ </div>
96
+ <?php if ($_product->getShortDescription()):?>
97
+ <div class="short-description">
98
+ <h2><?php echo $this->__('Quick Overview') ?>:</h2>
99
+ <div class="std"><?php echo $_helper->productAttribute($_product, nl2br($_product->getShortDescription()), 'short_description') ?></div>
100
+ </div>
101
+ <?php endif;?>
102
+ <div class="add_to_cart_links_con">
103
+ <div class="add_to_cart_con">
104
+ <?php if($_product->isSaleable()): ?>
105
+ <?php echo $this->getChildHtml('addtocart') ?>
106
+ <?php endif; ?>
107
+ </div>
108
+ <div class="add_to_links_con">
109
+ <?php echo $this->getChildHtml('addto') ?>
110
+ </div>
111
+ <div class="clear"></div>
112
+ </div>
113
+ <div class="share_con">
114
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('view_share')->toHtml() ?>
115
+ </div>
116
+ <?php echo $this->getChildHtml('other');?>
117
+
118
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
119
+ <?php echo $this->getChildChildHtml('container1', '', true, true) ?>
120
+ <?php endif;?>
121
+
122
+ </div>
123
+ </div>
124
+ <div class="clearer"></div>
125
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
126
+ <?php echo $this->getChildChildHtml('container2', '', true, true) ?>
127
+ <?php endif;?>
128
+ </form>
129
+ <script type="text/javascript">
130
+ //<![CDATA[
131
+ var productAddToCartForm = new VarienForm('product_addtocart_form');
132
+ productAddToCartForm.submit = function(button, url) {
133
+ if (this.validator.validate()) {
134
+ var form = this.form;
135
+ var oldUrl = form.action;
136
+
137
+ if (url) {
138
+ form.action = url;
139
+ }
140
+ var e = null;
141
+ try {
142
+ this.form.submit();
143
+ } catch (e) {
144
+ }
145
+ this.form.action = oldUrl;
146
+ if (e) {
147
+ throw e;
148
+ }
149
+
150
+ if (button && button != 'undefined') {
151
+ button.disabled = true;
152
+ }
153
+ }
154
+ }.bind(productAddToCartForm);
155
+
156
+ productAddToCartForm.submitLight = function(button, url){
157
+ if(this.validator) {
158
+ var nv = Validation.methods;
159
+ delete Validation.methods['required-entry'];
160
+ delete Validation.methods['validate-one-required'];
161
+ delete Validation.methods['validate-one-required-by-name'];
162
+ // Remove custom datetime validators
163
+ for (var methodName in Validation.methods) {
164
+ if (methodName.match(/^validate-datetime-.*/i)) {
165
+ delete Validation.methods[methodName];
166
+ }
167
+ }
168
+
169
+ if (this.validator.validate()) {
170
+ if (url) {
171
+ this.form.action = url;
172
+ }
173
+ this.form.submit();
174
+ }
175
+ Object.extend(Validation.methods, nv);
176
+ }
177
+ }.bind(productAddToCartForm);
178
+ //]]>
179
+ </script>
180
+ </div>
181
+
182
+ <div class="product-collateral">
183
+ <?php foreach ($this->getChildGroup('detailed_info', 'getChildHtml') as $alias => $html):?>
184
+ <div class="box-collateral <?php echo "box-{$alias}"?>">
185
+ <?php if ($title = $this->getChildData($alias, 'title')):?>
186
+ <h2><?php echo $this->escapeHtml($title); ?></h2>
187
+ <?php endif;?>
188
+ <?php echo $html; ?>
189
+ </div>
190
+ <?php endforeach;?>
191
+ <?php echo $this->getChildHtml('upsell_products') ?>
192
+ <?php echo $this->getChildHtml('product_additional_data') ?>
193
+ </div>
194
+ </div>
app/design/frontend/default/shoe_store/template/catalog/product/view/addtocart.phtml ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php $_product = $this->getProduct(); ?>
28
+ <?php $buttonTitle = $this->__('Add to Cart'); ?>
29
+ <?php if($_product->isSaleable()): ?>
30
+ <div class="add-to-cart">
31
+ <?php if(!$_product->isGrouped()): ?>
32
+ <label class="qty_label" for="qty"><?php echo $this->__('Quantity') ?>:</label>
33
+ <div class="qty_pan">
34
+ <input type="text" name="qty" id="qty" maxlength="12" value="<?php echo $this->getProductDefaultQty() * 1 ?>" title="<?php echo $this->__('Qty') ?>" class="input-text qty" />
35
+ </div>
36
+ <?php endif; ?>
37
+ <button type="button" title="<?php echo $buttonTitle ?>" class="button btn-cart" onclick="productAddToCartForm.submit(this)"><span><span><?php echo $buttonTitle ?></span></span></button>
38
+ <?php echo $this->getChildHtml('', true, true) ?>
39
+ </div>
40
+ <?php endif; ?>
41
+ <script type="text/javascript">
42
+ jQuery(function() {
43
+
44
+ jQuery("div.add-to-cart .qty_pan").append('<div class="inc add">&#8250;</div><div class="dec add">&#8249;</div>');
45
+
46
+ jQuery(".add").click(function() {
47
+ var jQueryadd = jQuery(this);
48
+ var oldValue = jQueryadd.parent().find("input").val();
49
+ var newVal = 0;
50
+
51
+ if (jQueryadd.text() == "›") {
52
+ newVal = parseFloat(oldValue) + 1;
53
+ // AJAX save would go here
54
+ } else {
55
+ // Don't allow decrementing below zero
56
+ if (oldValue > 1) {
57
+ newVal = parseFloat(oldValue) - 1;
58
+ // AJAX save would go here
59
+ }
60
+ if(oldValue == 1){
61
+ newVal = parseFloat(oldValue);
62
+ }
63
+ }
64
+ jQueryadd.parent().find("input").val(newVal);
65
+ });
66
+
67
+
68
+ });
69
+
70
+ </script>
app/design/frontend/default/shoe_store/template/catalog/product/view2.phtml ADDED
@@ -0,0 +1,361 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php $_helper = $this->helper('catalog/output'); ?>
2
+ <?php $_product = $this->getProduct(); ?>
3
+ <script type="text/javascript">
4
+
5
+
6
+
7
+ var optionsPrice = new Product.OptionsPrice(<?php echo $this->getJsonConfig() ?>);
8
+
9
+
10
+
11
+ </script>
12
+
13
+ <div id="messages_product_view"><?php echo $this->getMessagesBlock()->getGroupedHtml() ?></div>
14
+ <div class="product-view">
15
+ <div class="product-essential">
16
+ <div class="product-img-box span4"> <?php echo $this->getChildHtml('media') ?> </div>
17
+ <form action="<?php echo $this->getSubmitUrl($_product) ?>" method="post" id="product_addtocart_form"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>>
18
+ <div class="no-display">
19
+ <input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
20
+ <input type="hidden" name="related_product" id="related-products-field_1" value="" />
21
+ </div>
22
+
23
+ <!--Prev/Next Code Start-->
24
+
25
+ <?php
26
+
27
+
28
+
29
+ $_helper = $this->helper('catalog/output');
30
+
31
+
32
+
33
+ $_product = $this->getProduct();
34
+
35
+
36
+
37
+ $prev_url = $next_url = $url = $_product->getProductUrl();
38
+
39
+
40
+
41
+
42
+
43
+
44
+
45
+ if ($this->helper('catalog/data')->getCategory()) {
46
+
47
+
48
+
49
+ $category = $this->helper('catalog/data')->getCategory();
50
+
51
+
52
+
53
+ } else {
54
+
55
+
56
+
57
+ $_ccats = $this->helper('catalog/data')->getProduct()->getCategoryIds();
58
+
59
+
60
+
61
+ $category = Mage::getModel('catalog/category')->load($_ccats[0]);
62
+
63
+
64
+
65
+ }
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+ $children = $category->getProductCollection();
74
+
75
+
76
+
77
+ $_count = is_array($children) ? count($children) : $children->count();
78
+
79
+
80
+
81
+ if ($_count) {
82
+
83
+
84
+
85
+ foreach ($children as $product) {
86
+
87
+
88
+
89
+ $plist[] = $product->getId();
90
+
91
+
92
+
93
+ }
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+ /**
102
+
103
+
104
+
105
+ * Determine the previous/next link and link to current category
106
+
107
+
108
+
109
+ */
110
+
111
+
112
+
113
+ $current_pid = $this->helper('catalog/data')->getProduct()->getId();
114
+
115
+
116
+
117
+ $curpos = array_search($current_pid, $plist);
118
+
119
+
120
+
121
+ // get link for prev product
122
+
123
+
124
+
125
+ $previd = isset($plist[$curpos+1])? $plist[$curpos+1] : $current_pid;
126
+
127
+
128
+
129
+ $product = Mage::getModel('catalog/product')->load($previd);
130
+
131
+
132
+
133
+ $prevpos = $curpos;
134
+
135
+
136
+
137
+ while (!$product->isVisibleInCatalog()) {
138
+
139
+
140
+
141
+ $prevpos += 1;
142
+
143
+
144
+
145
+ $nextid = isset($plist[$prevpos])? $plist[$prevpos] : $current_pid;
146
+
147
+
148
+
149
+ $product = Mage::getModel('catalog/product')->load($nextid);
150
+
151
+
152
+
153
+ }
154
+
155
+
156
+
157
+ $prev_url = $product->getProductUrl();
158
+
159
+
160
+
161
+ // get link for next product
162
+
163
+
164
+
165
+ $nextid = isset($plist[$curpos-1])? $plist[$curpos-1] : $current_pid;
166
+
167
+
168
+
169
+ $product = Mage::getModel('catalog/product')->load($nextid);
170
+
171
+
172
+
173
+ $nextpos = $curpos;
174
+
175
+
176
+
177
+ while (!$product->isVisibleInCatalog()) {
178
+
179
+
180
+
181
+ $nextpos -= 1;
182
+
183
+
184
+
185
+ $nextid = isset($plist[$nextpos])? $plist[$nextpos] : $current_pid;
186
+
187
+
188
+
189
+ $product = Mage::getModel('catalog/product')->load($nextid);
190
+
191
+
192
+
193
+ }
194
+
195
+
196
+
197
+ $next_url = $product->getProductUrl();
198
+
199
+
200
+
201
+ }
202
+
203
+
204
+
205
+ ?>
206
+ <div class="NextPre"> <a rel="tooltip" data-placement="left" title="<?php echo $this->__('No Products')?>" class="prod-prev disable" href="#">Prev</a> <a rel="tooltip" data-placement="right" title="<?php echo $this->__('Previous Product')?>" class="prod-next disable" href="#">NEXT</a>
207
+ <?php if ($url <> $next_url):?>
208
+ <a rel="tooltip" data-placement="left" title="<?php echo $this->__('Previous Product')?>" class="prod-prev" href="<?php echo $next_url; ?>">PREV</a>
209
+ <?php endif; ?>
210
+ <?php if ($url <> $prev_url):?>
211
+ <a class="prod-next" rel="tooltip" data-placement="right" title="<?php echo $this->__('Next Product')?>" href="<?php echo $prev_url; ?>">NEXT</a>
212
+ <?php endif; ?>
213
+ </div>
214
+
215
+ <!--Prev/Next Code End-->
216
+
217
+ <div class="product-shop span5">
218
+ <div class="product_left">
219
+ <div class="product-name">
220
+ <h1><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></h1>
221
+ <?php if($_product->getData('brands')){echo '<span class="brands"><h4>brands:</h4>'. $_product->getAttributeText('brands').'</span>'; }?>
222
+ <div class="stock_box"> <?php echo $this->getChildHtml('alert_urls') ?> <?php echo $this->getChildHtml('product_type_data') ?> <?php echo $this->getTierPriceHtml()?> </div>
223
+ <div class="sku">
224
+ <h4>Sku:</h4>
225
+ <?php echo $this->htmlEscape($_product->getSku()) ?></div>
226
+ </div>
227
+ <div class="pro-left">
228
+ <div class="review"> <?php echo $this->getReviewsSummaryHtml($_product, false, true)?> </div>
229
+
230
+ <!-- <?php if ($_product->getShortDescription()):?>
231
+
232
+
233
+
234
+ <div class="short-description">
235
+
236
+
237
+
238
+ <div class="std"><?php echo $_helper->productAttribute($_product, nl2br($_product->getShortDescription()), 'short_description') ?></div>
239
+
240
+
241
+
242
+ </div>
243
+
244
+
245
+
246
+ <?php endif;?>-->
247
+
248
+ <div class="add_to_cart">
249
+ <?php if (!$this->hasOptions()):?>
250
+ <div class="add-to-box">
251
+ <?php if($_product->isSaleable()): ?>
252
+ <?php echo $this->getChildHtml('addtocart') ?>
253
+ <?php endif; ?>
254
+ </div>
255
+ <?php endif; ?>
256
+ <?php echo $this->getChildHtml('other');?>
257
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
258
+ <?php echo $this->getChildChildHtml('container1', '', true, true) ?>
259
+ <?php endif;?>
260
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
261
+ <?php echo $this->getChildChildHtml('container2', '', true, true) ?>
262
+ <?php endif;?>
263
+ </div>
264
+ </div>
265
+ <div class="pro-right"> <?php echo $this->getChildHtml('extrahint') ?>
266
+ <?php if( $this->helper('wishlist')->isAllow() || $_compareUrl=$this->helper('catalog/product_compare')->getAddUrl($_product)): ?>
267
+ <?php endif; ?>
268
+ <?php echo $this->getChildHtml('addto') ?>
269
+ <div class="additional">
270
+ <?php if ($this->canEmailToFriend()): ?>
271
+ <p class="email-friend"><a rel="tooltip" data-placement="top" title="<?php echo $this->__('Email to a Friend') ?>" href="<?php echo $this->helper('catalog/product')->getEmailToFriendUrl($_product) ?>"><?php echo $this->__('Email to a Friend') ?></a></p>
272
+ <?php endif; ?>
273
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('size_guide')->toHtml() ?></div>
274
+ <div class="additional">
275
+ <div class="addthis"> <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('addthis')->toHtml() ?> </div>
276
+ </div>
277
+ </div>
278
+ </div>
279
+ </div>
280
+ <div class="product_right span3"><?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('product_banner')->toHtml() ?> </div>
281
+ </form>
282
+ <div class="product-collateral"> <?php echo $this->getChildHtml('info_tabs') ?> <?php echo $this->getChildHtml('product_additional_data') ?> </div>
283
+ </div>
284
+ </div>
285
+ <?php echo $this->getChildHtml('upsell_products'); ?> <?php echo $this->getChildHtml('related'); ?>
286
+ <script type="text/javascript">
287
+ //<![CDATA[
288
+ var productAddToCartForm = new VarienForm('product_addtocart_form');
289
+ productAddToCartForm.submit = function(button, url) {
290
+ if (this.validator.validate()) {
291
+ var form = this.form;
292
+ var oldUrl = form.action;
293
+
294
+ if (url) {
295
+ form.action = url;
296
+ }
297
+ var e = null;
298
+ try {
299
+ this.form.submit();
300
+ } catch (e) {
301
+ }
302
+ this.form.action = oldUrl;
303
+ if (e) {
304
+ throw e;
305
+ }
306
+
307
+ if (button && button != 'undefined') {
308
+ button.disabled = true;
309
+ }
310
+ }
311
+ }.bind(productAddToCartForm);
312
+
313
+ productAddToCartForm.submitLight = function(button, url){
314
+ if(this.validator) {
315
+ var nv = Validation.methods;
316
+ delete Validation.methods['required-entry'];
317
+ delete Validation.methods['validate-one-required'];
318
+ delete Validation.methods['validate-one-required-by-name'];
319
+ // Remove custom datetime validators
320
+ for (var methodName in Validation.methods) {
321
+ if (methodName.match(/^validate-datetime-.*/i)) {
322
+ delete Validation.methods[methodName];
323
+ }
324
+ }
325
+
326
+ if (this.validator.validate()) {
327
+ if (url) {
328
+ this.form.action = url;
329
+ }
330
+ this.form.submit();
331
+ }
332
+ Object.extend(Validation.methods, nv);
333
+ }
334
+ }.bind(productAddToCartForm);
335
+ //]]>
336
+ </script>
337
+ <script type="text/javascript">
338
+
339
+ jQuery(document).ready(function(){
340
+
341
+ jQuery("a[rel=example_group]").fancybox({
342
+
343
+ 'transitionIn' : 'none',
344
+
345
+ 'transitionOut' : 'none',
346
+
347
+ 'titlePosition' : 'over',
348
+
349
+ 'titleFormat' : function(title, currentArray, currentIndex, currentOpts) {
350
+
351
+ return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' &nbsp; ' + title : '') + '</span>';
352
+
353
+ }
354
+
355
+ });
356
+
357
+
358
+
359
+ });
360
+
361
+ </script>
app/design/frontend/default/shoe_store/template/catalogsearch/form.mini.phtml ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ /* @var $this Mage_Core_Block_Template */
27
+ /* @var $catalogSearchHelper Mage_Catalogsearch_Helper_Data */
28
+ $catalogSearchHelper = $this->helper('catalogsearch');
29
+ ?>
30
+ <form id="search_mini_form" class="bscclearfix" action="<?php echo $catalogSearchHelper->getResultUrl() ?>" method="get">
31
+ <div class="form-search bscclearfix">
32
+ <label for="search"><?php echo $this->__('Search:') ?></label>
33
+ <input id="search" type="text" name="<?php echo $catalogSearchHelper->getQueryParamName() ?>" value="<?php echo $catalogSearchHelper->getEscapedQueryText() ?>" class="input-text" maxlength="<?php echo $catalogSearchHelper->getMaxQueryLength();?>" />
34
+ <button type="submit" title="<?php echo $this->__('Search') ?>" class="button"><span><span><?php echo $this->__('Search') ?></span></span></button>
35
+ <div id="search_autocomplete" class="search-autocomplete"></div>
36
+ <script type="text/javascript">
37
+ //<![CDATA[
38
+ var searchForm = new Varien.searchForm('search_mini_form', 'search', '<?php echo $this->__('Search entire store here...') ?>');
39
+ searchForm.initAutocomplete('<?php echo $catalogSearchHelper->getSuggestUrl() ?>', 'search_autocomplete');
40
+ //]]>
41
+ </script>
42
+ </div>
43
+ </form>
app/design/frontend/default/shoe_store/template/checkout/cart.phtml ADDED
@@ -0,0 +1,165 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Shopping cart template
30
+ *
31
+ * @see Mage_Checkout_Block_Cart
32
+ */
33
+ ?>
34
+ <div class="cart">
35
+ <div class="page-title title-buttons">
36
+ <h1><?php echo $this->__('Shopping Cart') ?></h1>
37
+ <?php if(!$this->hasError()): ?>
38
+ <ul class="checkout-types">
39
+ <?php foreach ($this->getMethods('top_methods') as $method): ?>
40
+ <?php if ($methodHtml = $this->getMethodHtml($method)): ?>
41
+ <li><?php echo $methodHtml; ?></li>
42
+ <?php endif; ?>
43
+ <?php endforeach; ?>
44
+ </ul>
45
+ <?php endif; ?>
46
+ </div>
47
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
48
+ <?php echo $this->getChildHtml('form_before') ?>
49
+ <form action="<?php echo $this->getUrl('checkout/cart/updatePost') ?>" method="post" class="cart-table-form">
50
+ <fieldset>
51
+ <table id="shopping-cart-table" class="data-table cart-table">
52
+ <col width="1" />
53
+ <col />
54
+ <col width="1" />
55
+ <?php if ($this->helper('wishlist')->isAllowInCart()) : ?>
56
+ <col width="1" />
57
+ <?php endif ?>
58
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
59
+ <col width="1" />
60
+ <?php endif; ?>
61
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
62
+ <col width="1" />
63
+ <?php endif; ?>
64
+ <col width="1" />
65
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
66
+ <col width="1" />
67
+ <?php endif; ?>
68
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
69
+ <col width="1" />
70
+ <?php endif; ?>
71
+ <col width="1" />
72
+
73
+ <?php $mergedCells = ($this->helper('tax')->displayCartBothPrices() ? 2 : 1); ?>
74
+ <thead>
75
+ <tr>
76
+ <th rowspan="<?php echo $mergedCells; ?>">&nbsp;</th>
77
+ <th rowspan="<?php echo $mergedCells; ?>"><span class="nobr"><?php echo $this->__('Product Name') ?></span></th>
78
+ <th rowspan="<?php echo $mergedCells; ?>"></th>
79
+ <?php if ($this->helper('wishlist')->isAllowInCart()) : ?>
80
+ <th rowspan="<?php echo $mergedCells; ?>" class="a-center"><span class="nobr"><?php echo $this->__('Move to Wishlist') ?></span></th>
81
+ <?php endif ?>
82
+ <th class="a-center" colspan="<?php echo $mergedCells; ?>"><span class="nobr"><?php echo $this->__('Unit Price') ?></span></th>
83
+ <th rowspan="<?php echo $mergedCells; ?>" class="a-center"><?php echo $this->__('Qty') ?></th>
84
+ <th class="a-center" colspan="<?php echo $mergedCells; ?>"><?php echo $this->__('Subtotal') ?></th>
85
+ <th rowspan="<?php echo $mergedCells; ?>" class="a-center">&nbsp;</th>
86
+ </tr>
87
+ <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
88
+ <tr>
89
+ <th class="a-right"><?php echo $this->helper('tax')->getIncExcTaxLabel(false) ?></th>
90
+ <th><?php echo $this->helper('tax')->getIncExcTaxLabel(true) ?></th>
91
+ <th class="a-right"><?php echo $this->helper('tax')->getIncExcTaxLabel(false) ?></th>
92
+ <th><?php echo $this->helper('tax')->getIncExcTaxLabel(true) ?></th>
93
+ </tr>
94
+ <?php endif; ?>
95
+ </thead>
96
+ <tfoot>
97
+ <tr>
98
+ <td colspan="50" class="a-right">
99
+ <?php if($this->getContinueShoppingUrl()): ?>
100
+ <button type="button" title="<?php echo $this->__('Continue Shopping') ?>" class="button btn-continue" onclick="setLocation('<?php echo $this->getContinueShoppingUrl() ?>')"><span><span><?php echo $this->__('Continue Shopping') ?></span></span></button>
101
+ <?php endif; ?>
102
+ <button type="submit" name="update_cart_action" value="update_qty" title="<?php echo $this->__('Update Shopping Cart'); ?>" class="button btn-update"><span><span><?php echo $this->__('Update Shopping Cart'); ?></span></span></button>
103
+ <button type="submit" name="update_cart_action" value="empty_cart" title="<?php echo $this->__('Clear Shopping Cart'); ?>" class="button btn-empty" id="empty_cart_button"><span><span><?php echo $this->__('Clear Shopping Cart'); ?></span></span></button>
104
+ <!--[if lt IE 8]>
105
+ <input type="hidden" id="update_cart_action_container" />
106
+ <script type="text/javascript">
107
+ //<![CDATA[
108
+ Event.observe(window, 'load', function()
109
+ {
110
+ // Internet Explorer (lt 8) does not support value attribute in button elements
111
+ $emptyCartButton = $('empty_cart_button');
112
+ $cartActionContainer = $('update_cart_action_container');
113
+ if ($emptyCartButton && $cartActionContainer) {
114
+ Event.observe($emptyCartButton, 'click', function()
115
+ {
116
+ $emptyCartButton.setAttribute('name', 'update_cart_action_temp');
117
+ $cartActionContainer.setAttribute('name', 'update_cart_action');
118
+ $cartActionContainer.setValue('empty_cart');
119
+ });
120
+ }
121
+
122
+ });
123
+ //]]>
124
+ </script>
125
+ <![endif]-->
126
+ </td>
127
+ </tr>
128
+ </tfoot>
129
+ <tbody>
130
+ <?php foreach($this->getItems() as $_item): ?>
131
+ <?php echo $this->getItemHtml($_item) ?>
132
+ <?php endforeach ?>
133
+ </tbody>
134
+ </table>
135
+ <script type="text/javascript">decorateTable('shopping-cart-table')</script>
136
+ </fieldset>
137
+ </form>
138
+ <div class="cart-collaterals">
139
+ <div class="col2-set span8">
140
+ <div class="row-fluid">
141
+ <div class="col-1 span6">
142
+ <?php echo $this->getChildHtml('crosssell') ?>
143
+ </div>
144
+ <div class="col-2 span6">
145
+ <?php /* Extensions placeholder */ ?>
146
+ <?php echo $this->getChildHtml('checkout.cart.extra') ?>
147
+ <?php echo $this->getChildHtml('coupon') ?>
148
+ <?php if (!$this->getIsVirtual()): echo $this->getChildHtml('shipping'); endif; ?>
149
+ </div>
150
+ </div>
151
+ </div>
152
+ <div class="totals span4">
153
+ <?php echo $this->getChildHtml('totals'); ?>
154
+ <?php if(!$this->hasError()): ?>
155
+ <ul class="checkout-types">
156
+ <?php foreach ($this->getMethods('methods') as $method): ?>
157
+ <?php if ($methodHtml = $this->getMethodHtml($method)): ?>
158
+ <li><?php echo $methodHtml; ?></li>
159
+ <?php endif; ?>
160
+ <?php endforeach; ?>
161
+ </ul>
162
+ <?php endif; ?>
163
+ </div>
164
+ </div>
165
+ </div>
app/design/frontend/default/shoe_store/template/checkout/cart.phtml~ ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Shopping cart template
30
+ *
31
+ * @see Mage_Checkout_Block_Cart
32
+ */
33
+ ?>
34
+ <div class="cart">
35
+ <div class="page-title title-buttons">
36
+ <h1><?php echo $this->__('Shopping Cart') ?></h1>
37
+ <?php if(!$this->hasError()): ?>
38
+ <ul class="checkout-types">
39
+ <?php foreach ($this->getMethods('top_methods') as $method): ?>
40
+ <?php if ($methodHtml = $this->getMethodHtml($method)): ?>
41
+ <li><?php echo $methodHtml; ?></li>
42
+ <?php endif; ?>
43
+ <?php endforeach; ?>
44
+ </ul>
45
+ <?php endif; ?>
46
+ </div>
47
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
48
+ <?php echo $this->getChildHtml('form_before') ?>
49
+ <form action="<?php echo $this->getUrl('checkout/cart/updatePost') ?>" method="post" class="cart-table-form">
50
+ <fieldset>
51
+ <table id="shopping-cart-table" class="data-table cart-table">
52
+ <col width="1" />
53
+ <col />
54
+ <col width="1" />
55
+ <?php if ($this->helper('wishlist')->isAllowInCart()) : ?>
56
+ <col width="1" />
57
+ <?php endif ?>
58
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
59
+ <col width="1" />
60
+ <?php endif; ?>
61
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
62
+ <col width="1" />
63
+ <?php endif; ?>
64
+ <col width="1" />
65
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
66
+ <col width="1" />
67
+ <?php endif; ?>
68
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
69
+ <col width="1" />
70
+ <?php endif; ?>
71
+ <col width="1" />
72
+
73
+ <?php $mergedCells = ($this->helper('tax')->displayCartBothPrices() ? 2 : 1); ?>
74
+ <thead>
75
+ <tr>
76
+ <th rowspan="<?php echo $mergedCells; ?>">&nbsp;</th>
77
+ <th rowspan="<?php echo $mergedCells; ?>"><span class="nobr"><?php echo $this->__('Product Name') ?></span></th>
78
+ <th rowspan="<?php echo $mergedCells; ?>"></th>
79
+ <?php if ($this->helper('wishlist')->isAllowInCart()) : ?>
80
+ <th rowspan="<?php echo $mergedCells; ?>" class="a-center"><span class="nobr"><?php echo $this->__('Move to Wishlist') ?></span></th>
81
+ <?php endif ?>
82
+ <th class="a-center" colspan="<?php echo $mergedCells; ?>"><span class="nobr"><?php echo $this->__('Unit Price') ?></span></th>
83
+ <th rowspan="<?php echo $mergedCells; ?>" class="a-center"><?php echo $this->__('Qty') ?></th>
84
+ <th class="a-center" colspan="<?php echo $mergedCells; ?>"><?php echo $this->__('Subtotal') ?></th>
85
+ <th rowspan="<?php echo $mergedCells; ?>" class="a-center">&nbsp;</th>
86
+ </tr>
87
+ <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
88
+ <tr>
89
+ <th class="a-right"><?php echo $this->helper('tax')->getIncExcTaxLabel(false) ?></th>
90
+ <th><?php echo $this->helper('tax')->getIncExcTaxLabel(true) ?></th>
91
+ <th class="a-right"><?php echo $this->helper('tax')->getIncExcTaxLabel(false) ?></th>
92
+ <th><?php echo $this->helper('tax')->getIncExcTaxLabel(true) ?></th>
93
+ </tr>
94
+ <?php endif; ?>
95
+ </thead>
96
+ <tfoot>
97
+ <tr>
98
+ <td colspan="50" class="a-right">
99
+ <?php if($this->getContinueShoppingUrl()): ?>
100
+ <button type="button" title="<?php echo $this->__('Continue Shopping') ?>" class="button btn-continue" onclick="setLocation('<?php echo $this->getContinueShoppingUrl() ?>')"><span><span><?php echo $this->__('Continue Shopping') ?></span></span></button>
101
+ <?php endif; ?>
102
+ <button type="submit" name="update_cart_action" value="update_qty" title="<?php echo $this->__('Update Shopping Cart'); ?>" class="button btn-update"><span><span><?php echo $this->__('Update Shopping Cart'); ?></span></span></button>
103
+ <button type="submit" name="update_cart_action" value="empty_cart" title="<?php echo $this->__('Clear Shopping Cart'); ?>" class="button btn-empty" id="empty_cart_button"><span><span><?php echo $this->__('Clear Shopping Cart'); ?></span></span></button>
104
+ <!--[if lt IE 8]>
105
+ <input type="hidden" id="update_cart_action_container" />
106
+ <script type="text/javascript">
107
+ //<![CDATA[
108
+ Event.observe(window, 'load', function()
109
+ {
110
+ // Internet Explorer (lt 8) does not support value attribute in button elements
111
+ $emptyCartButton = $('empty_cart_button');
112
+ $cartActionContainer = $('update_cart_action_container');
113
+ if ($emptyCartButton && $cartActionContainer) {
114
+ Event.observe($emptyCartButton, 'click', function()
115
+ {
116
+ $emptyCartButton.setAttribute('name', 'update_cart_action_temp');
117
+ $cartActionContainer.setAttribute('name', 'update_cart_action');
118
+ $cartActionContainer.setValue('empty_cart');
119
+ });
120
+ }
121
+
122
+ });
123
+ //]]>
124
+ </script>
125
+ <![endif]-->
126
+ </td>
127
+ </tr>
128
+ </tfoot>
129
+ <tbody>
130
+ <?php foreach($this->getItems() as $_item): ?>
131
+ <?php echo $this->getItemHtml($_item) ?>
132
+ <?php endforeach ?>
133
+ </tbody>
134
+ </table>
135
+ <script type="text/javascript">decorateTable('shopping-cart-table')</script>
136
+ </fieldset>
137
+ </form>
138
+ <div class="cart-collaterals">
139
+ <div class="col2-set">
140
+ <div class="col-1">
141
+ <?php echo $this->getChildHtml('crosssell') ?>
142
+ </div>
143
+ <div class="col-2">
144
+ <?php /* Extensions placeholder */ ?>
145
+ <?php echo $this->getChildHtml('checkout.cart.extra') ?>
146
+ <?php echo $this->getChildHtml('coupon') ?>
147
+ <?php if (!$this->getIsVirtual()): echo $this->getChildHtml('shipping'); endif; ?>
148
+ </div>
149
+ </div>
150
+ <div class="totals">
151
+ <?php echo $this->getChildHtml('totals'); ?>
152
+ <?php if(!$this->hasError()): ?>
153
+ <ul class="checkout-types">
154
+ <?php foreach ($this->getMethods('methods') as $method): ?>
155
+ <?php if ($methodHtml = $this->getMethodHtml($method)): ?>
156
+ <li><?php echo $methodHtml; ?></li>
157
+ <?php endif; ?>
158
+ <?php endforeach; ?>
159
+ </ul>
160
+ <?php endif; ?>
161
+ </div>
162
+ </div>
163
+ </div>
app/design/frontend/default/shoe_store/template/checkout/cart/item/default.phtml ADDED
@@ -0,0 +1,278 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ $_item = $this->getItem();
29
+ $isVisibleProduct = $_item->getProduct()->isVisibleInSiteVisibility();
30
+ $canApplyMsrp = Mage::helper('catalog')->canApplyMsrp($_item->getProduct(), Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type::TYPE_BEFORE_ORDER_CONFIRM);
31
+ ?>
32
+ <tr>
33
+ <td><?php if ($this->hasProductUrl()):?><a href="<?php echo $this->getProductUrl() ?>" title="<?php echo $this->htmlEscape($this->getProductName()) ?>" class="product-image"><?php endif;?><img src="<?php echo $this->getProductThumbnail()->resize(75); ?>" width="75" height="75" alt="<?php echo $this->htmlEscape($this->getProductName()) ?>" /><?php if ($this->hasProductUrl()):?></a><?php endif;?></td>
34
+ <td>
35
+ <h2 class="product-name">
36
+ <?php if ($this->hasProductUrl()):?>
37
+ <a href="<?php echo $this->getProductUrl() ?>"><?php echo $this->htmlEscape($this->getProductName()) ?></a>
38
+ <?php else: ?>
39
+ <?php echo $this->htmlEscape($this->getProductName()) ?>
40
+ <?php endif; ?>
41
+ </h2>
42
+ <?php if ($_options = $this->getOptionList()):?>
43
+ <dl class="item-options">
44
+ <?php foreach ($_options as $_option) : ?>
45
+ <?php $_formatedOptionValue = $this->getFormatedOptionValue($_option) ?>
46
+ <dt><?php echo $this->htmlEscape($_option['label']) ?></dt>
47
+ <dd<?php if (isset($_formatedOptionValue['full_view'])): ?> class="truncated"<?php endif; ?>><?php echo $_formatedOptionValue['value'] ?>
48
+ <?php if (isset($_formatedOptionValue['full_view'])): ?>
49
+ <div class="truncated_full_value">
50
+ <dl class="item-options">
51
+ <dt><?php echo $this->htmlEscape($_option['label']) ?></dt>
52
+ <dd><?php echo $_formatedOptionValue['full_view'] ?></dd>
53
+ </dl>
54
+ </div>
55
+ <?php endif; ?>
56
+ </dd>
57
+ <?php endforeach; ?>
58
+ </dl>
59
+ <?php endif;?>
60
+ <?php if ($messages = $this->getMessages()): ?>
61
+ <?php foreach ($messages as $message): ?>
62
+ <p class="item-msg <?php echo $message['type'] ?>">* <?php echo $this->escapeHtml($message['text']) ?></p>
63
+ <?php endforeach; ?>
64
+ <?php endif; ?>
65
+ <?php $addInfoBlock = $this->getProductAdditionalInformationBlock(); ?>
66
+ <?php if ($addInfoBlock): ?>
67
+ <?php echo $addInfoBlock->setItem($_item)->toHtml() ?>
68
+ <?php endif;?>
69
+ </td>
70
+ <td class="a-center">
71
+ <?php if ($isVisibleProduct): ?>
72
+ <a href="<?php echo $this->getConfigureUrl() ?>" title="<?php echo $this->__('Edit item parameters') ?>"><?php echo $this->__('Edit') ?></a>
73
+ <?php endif ?>
74
+ </td>
75
+ <?php if ($this->helper('wishlist')->isAllowInCart()) : ?>
76
+ <td class="a-center">
77
+ <?php if ($isVisibleProduct): ?>
78
+ <a href="<?php echo $this->helper('wishlist')->getMoveFromCartUrl($_item->getId()); ?>" class="link-wishlist use-ajax"><?php echo $this->__('Move'); ?></a>
79
+ <?php endif ?>
80
+ </td>
81
+ <?php endif ?>
82
+
83
+ <?php if ($canApplyMsrp): ?>
84
+ <td class="a-right"<?php if ($this->helper('tax')->displayCartBothPrices()): ?> colspan="2"<?php endif; ?>>
85
+ <span class="cart-price">
86
+ <span class="cart-msrp-unit"><?php echo $this->__('See price before order confirmation.'); ?></span>
87
+ <?php $helpLinkId = 'cart-msrp-help-' . $_item->getId(); ?>
88
+ <a id="<?php echo $helpLinkId ?>" href="#" class="map-help-link"><?php echo $this->__("What's this?"); ?></a>
89
+ <script type="text/javascript">
90
+ Catalog.Map.addHelpLink($('<?php echo $helpLinkId ?>'), "<?php echo $this->__("What's this?") ?>");
91
+ </script>
92
+ </span>
93
+ </td>
94
+ <?php else: ?>
95
+
96
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
97
+ <td class="a-right">
98
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
99
+ <span class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
100
+ <?php else: ?>
101
+ <span class="cart-price">
102
+ <?php endif; ?>
103
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
104
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
105
+ <?php else: ?>
106
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
107
+ <?php endif; ?>
108
+
109
+ </span>
110
+
111
+
112
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
113
+
114
+ <div class="cart-tax-info" id="eunit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
115
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
116
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
117
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
118
+ <?php endforeach; ?>
119
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
120
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
121
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
122
+ <?php endforeach; ?>
123
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
124
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
125
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
126
+ <?php endforeach; ?>
127
+ <?php endif; ?>
128
+ </div>
129
+
130
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
131
+ <div class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
132
+ <span class="weee"><?php echo Mage::helper('weee')->__('Total'); ?>: <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
133
+ </div>
134
+ <?php endif; ?>
135
+ <?php endif; ?>
136
+ </td>
137
+ <?php endif; ?>
138
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
139
+ <td>
140
+ <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
141
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
142
+ <span class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
143
+ <?php else: ?>
144
+ <span class="cart-price">
145
+ <?php endif; ?>
146
+
147
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
148
+ <?php echo $this->helper('checkout')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?>
149
+ <?php else: ?>
150
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
151
+ <?php endif; ?>
152
+
153
+ </span>
154
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
155
+
156
+ <div class="cart-tax-info" id="unit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
157
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
158
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
159
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
160
+ <?php endforeach; ?>
161
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
162
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
163
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
164
+ <?php endforeach; ?>
165
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
166
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
167
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
168
+ <?php endforeach; ?>
169
+ <?php endif; ?>
170
+ </div>
171
+
172
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
173
+ <div class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
174
+ <span class="weee"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>: <?php echo $this->helper('checkout')->formatPrice($_incl+$_item->getWeeeTaxAppliedAmount()); ?></span>
175
+ </div>
176
+ <?php endif; ?>
177
+ <?php endif; ?>
178
+ </td>
179
+ <?php endif; ?>
180
+ <?php endif; ?>
181
+ <td class="a-center">
182
+ <input name="cart[<?php echo $_item->getId() ?>][qty]" value="<?php echo $this->getQty() ?>" size="4" title="<?php echo $this->__('Qty') ?>" class="input-text qty" maxlength="12" />
183
+ </td>
184
+ <?php if (($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()) && !$_item->getNoSubtotal()): ?>
185
+ <td class="a-right">
186
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
187
+ <span class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
188
+ <?php else: ?>
189
+ <span class="cart-price">
190
+ <?php endif; ?>
191
+
192
+ <?php if ($canApplyMsrp): ?>
193
+ <span class="cart-msrp-subtotal">--</span>
194
+ <?php else: ?>
195
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
196
+ <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
197
+ <?php else: ?>
198
+ <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()) ?>
199
+ <?php endif; ?>
200
+ <?php endif; ?>
201
+
202
+ </span>
203
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
204
+
205
+ <div class="cart-tax-info" id="esubtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
206
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
207
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
208
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span>
209
+ <?php endforeach; ?>
210
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
211
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
212
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
213
+ <?php endforeach; ?>
214
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
215
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
216
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
217
+ <?php endforeach; ?>
218
+ <?php endif; ?>
219
+ </div>
220
+
221
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
222
+ <div class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
223
+ <span class="weee"><?php echo Mage::helper('weee')->__('Total'); ?>: <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?></span>
224
+ </div>
225
+ <?php endif; ?>
226
+ <?php endif; ?>
227
+ </td>
228
+ <?php endif; ?>
229
+ <?php if (($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()) && !$_item->getNoSubtotal()): ?>
230
+ <td>
231
+ <?php $_incl = $this->helper('checkout')->getSubtotalInclTax($_item); ?>
232
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
233
+ <span class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
234
+ <?php else: ?>
235
+ <span class="cart-price">
236
+ <?php endif; ?>
237
+
238
+ <?php if ($canApplyMsrp): ?>
239
+ <span class="cart-msrp-subtotal">--</span>
240
+ <?php else: ?>
241
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
242
+ <?php echo $this->helper('checkout')->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?>
243
+ <?php else: ?>
244
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?>
245
+ <?php endif; ?>
246
+ <?php endif; ?>
247
+
248
+ </span>
249
+
250
+
251
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
252
+
253
+ <div class="cart-tax-info" id="subtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
254
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
255
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
256
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span>
257
+ <?php endforeach; ?>
258
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
259
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
260
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
261
+ <?php endforeach; ?>
262
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
263
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
264
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
265
+ <?php endforeach; ?>
266
+ <?php endif; ?>
267
+ </div>
268
+
269
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
270
+ <div class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
271
+ <span class="weee"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>: <?php echo $this->helper('checkout')->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?></span>
272
+ </div>
273
+ <?php endif; ?>
274
+ <?php endif; ?>
275
+ </td>
276
+ <?php endif; ?>
277
+ <td class="a-center"><a href="<?php echo $this->getDeleteUrl()?>" title="<?php echo $this->__('Remove item')?>" class="btn-remove btn-remove2"><?php echo $this->__('Remove item')?></a></td>
278
+ </tr>
app/design/frontend/default/shoe_store/template/checkout/multishipping/addresses.phtml ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Ship to multiple address template
30
+ *
31
+ * @see Mage_Checkout_Block_Multishipping_Addresses
32
+ */
33
+ ?>
34
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
35
+ <form id="checkout_multishipping_form" action="<?php echo $this->getPostActionUrl() ?>" method="post">
36
+ <div class="multiple-checkout">
37
+ <div class="page-title title-buttons">
38
+ <h1><?php echo $this->__('Ship to Multiple Addresses') ?></h1>
39
+ <button type="button" title="<?php echo $this->__('Enter a New Address') ?>" class="button" onclick="$('add_new_address_flag').value=1; $('checkout_multishipping_form').submit();"><span><span><?php echo $this->__('Enter a New Address') ?></span></span></button>
40
+ </div>
41
+ <input type="hidden" name="continue" value="0" id="can_continue_flag" />
42
+ <input type="hidden" name="new_address" value="0" id="add_new_address_flag" />
43
+ <h2><?php echo $this->__('Please select shipping address for applicable items') ?></h2>
44
+ <div class="responsive_table">
45
+ <table class="data-table" id="multiship-addresses-table">
46
+ <col />
47
+ <col width="1" />
48
+ <col width="1" />
49
+ <col width="1" />
50
+ <thead>
51
+ <tr>
52
+ <th><?php echo $this->__('Product') ?></th>
53
+ <th class="a-center"><?php echo $this->__('Qty') ?></th>
54
+ <th><?php echo $this->__('Send To') ?></th>
55
+ <th>&nbsp;</th>
56
+ </tr>
57
+ </thead>
58
+ <tfoot>
59
+ <tr>
60
+ <td colspan="100" class="a-right"><button type="submit" title="<?php echo $this->__('Update Qty &amp; Addresses') ?>" class="button" onclick="$('can_continue_flag').value=0"><span><span><?php echo $this->__('Update Qty &amp; Addresses') ?></span></span></button></td>
61
+ </tr>
62
+ </tfoot>
63
+ <tbody>
64
+ <?php foreach ($this->getItems() as $_index => $_item): ?>
65
+ <?php if ($_item->getQuoteItem()) :?>
66
+ <tr>
67
+ <td><?php echo $this->getItemHtml($_item->getQuoteItem())?></td>
68
+ <td><input type="text" name="ship[<?php echo $_index ?>][<?php echo $_item->getQuoteItemId() ?>][qty]" value="<?php echo $this->htmlEscape($_item->getQty()) ?>" size="2" class="input-text qty" /></td>
69
+ <td><?php if ($_item->getProduct()->getIsVirtual()): echo $this->__('Shipping selection is not applicable.'); else: echo $this->getAddressesHtmlSelect($_item, $_index); endif; ?></td>
70
+ <td class="a-center"><a href="<?php echo $this->getItemDeleteUrl($_item) ?>" title="<?php echo $this->__('Remove Item') ?>" class="btn-remove2"><?php echo $this->__('Remove Item') ?></a></td>
71
+ </tr>
72
+ <?php endif; ?>
73
+ <?php endforeach; ?>
74
+ </tbody>
75
+ </table>
76
+ </div>
77
+ <script type="text/javascript">decorateTable('multiship-addresses-table')</script>
78
+ <div class="buttons-set">
79
+ <p class="back-link"><a href="<?php echo $this->getBackUrl() ?>"><small>&laquo; </small><?php echo $this->__('Back to Shopping Cart') ?></a></p>
80
+ <button type="submit" title="<?php echo $this->__('Continue to Shipping Information') ?>" class="button<?php if ($this->isContinueDisabled()):?> disabled<?php endif; ?>" onclick="$('can_continue_flag').value=1"<?php if ($this->isContinueDisabled()):?> disabled="disabled"<?php endif; ?>><span><span><?php echo $this->__('Continue to Shipping Information') ?></span></span></button>
81
+ </div>
82
+ </div>
83
+ </form>
app/design/frontend/default/shoe_store/template/checkout/multishipping/addresses.phtml~ ADDED
@@ -0,0 +1,81 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Ship to multiple address template
30
+ *
31
+ * @see Mage_Checkout_Block_Multishipping_Addresses
32
+ */
33
+ ?>
34
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
35
+ <form id="checkout_multishipping_form" action="<?php echo $this->getPostActionUrl() ?>" method="post">
36
+ <div class="multiple-checkout">
37
+ <div class="page-title title-buttons">
38
+ <h1><?php echo $this->__('Ship to Multiple Addresses') ?></h1>
39
+ <button type="button" title="<?php echo $this->__('Enter a New Address') ?>" class="button" onclick="$('add_new_address_flag').value=1; $('checkout_multishipping_form').submit();"><span><span><?php echo $this->__('Enter a New Address') ?></span></span></button>
40
+ </div>
41
+ <input type="hidden" name="continue" value="0" id="can_continue_flag" />
42
+ <input type="hidden" name="new_address" value="0" id="add_new_address_flag" />
43
+ <h2><?php echo $this->__('Please select shipping address for applicable items') ?></h2>
44
+ <table class="data-table" id="multiship-addresses-table">
45
+ <col />
46
+ <col width="1" />
47
+ <col width="1" />
48
+ <col width="1" />
49
+ <thead>
50
+ <tr>
51
+ <th><?php echo $this->__('Product') ?></th>
52
+ <th class="a-center"><?php echo $this->__('Qty') ?></th>
53
+ <th><?php echo $this->__('Send To') ?></th>
54
+ <th>&nbsp;</th>
55
+ </tr>
56
+ </thead>
57
+ <tfoot>
58
+ <tr>
59
+ <td colspan="100" class="a-right"><button type="submit" title="<?php echo $this->__('Update Qty &amp; Addresses') ?>" class="button" onclick="$('can_continue_flag').value=0"><span><span><?php echo $this->__('Update Qty &amp; Addresses') ?></span></span></button></td>
60
+ </tr>
61
+ </tfoot>
62
+ <tbody>
63
+ <?php foreach ($this->getItems() as $_index => $_item): ?>
64
+ <?php if ($_item->getQuoteItem()) :?>
65
+ <tr>
66
+ <td><?php echo $this->getItemHtml($_item->getQuoteItem())?></td>
67
+ <td><input type="text" name="ship[<?php echo $_index ?>][<?php echo $_item->getQuoteItemId() ?>][qty]" value="<?php echo $this->htmlEscape($_item->getQty()) ?>" size="2" class="input-text qty" /></td>
68
+ <td><?php if ($_item->getProduct()->getIsVirtual()): echo $this->__('Shipping selection is not applicable.'); else: echo $this->getAddressesHtmlSelect($_item, $_index); endif; ?></td>
69
+ <td class="a-center"><a href="<?php echo $this->getItemDeleteUrl($_item) ?>" title="<?php echo $this->__('Remove Item') ?>" class="btn-remove2"><?php echo $this->__('Remove Item') ?></a></td>
70
+ </tr>
71
+ <?php endif; ?>
72
+ <?php endforeach; ?>
73
+ </tbody>
74
+ </table>
75
+ <script type="text/javascript">decorateTable('multiship-addresses-table')</script>
76
+ <div class="buttons-set">
77
+ <p class="back-link"><a href="<?php echo $this->getBackUrl() ?>"><small>&laquo; </small><?php echo $this->__('Back to Shopping Cart') ?></a></p>
78
+ <button type="submit" title="<?php echo $this->__('Continue to Shipping Information') ?>" class="button<?php if ($this->isContinueDisabled()):?> disabled<?php endif; ?>" onclick="$('can_continue_flag').value=1"<?php if ($this->isContinueDisabled()):?> disabled="disabled"<?php endif; ?>><span><span><?php echo $this->__('Continue to Shipping Information') ?></span></span></button>
79
+ </div>
80
+ </div>
81
+ </form>
app/design/frontend/default/shoe_store/template/checkout/multishipping/billing.phtml ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Multishipping checkout billing information
30
+ *
31
+ * @see Mage_Checkout_Block_Multishipping_Billing
32
+ */
33
+ ?>
34
+ <div class="multiple-checkout">
35
+ <div class="page-title">
36
+ <h1><?php echo $this->__('Billing Information') ?></h1>
37
+ </div>
38
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
39
+ <script src="<?php echo Mage::getBaseUrl('js') ?>varien/payment.js" type="text/javascript"></script>
40
+ <form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="multishipping-billing-form">
41
+ <div class="col2-set">
42
+ <div class="col-narrow span6">
43
+ <div class="box">
44
+ <div class="box-title">
45
+ <h2><?php echo $this->__('Billing Address') ?> <span class="separator">|</span> <a href="<?php echo $this->getSelectAddressUrl() ?>"><?php echo $this->__('Change') ?></a></h2>
46
+ </div>
47
+ <div class="box-content">
48
+ <?php $_address=$this->getAddress() ?>
49
+ <address><?php echo $_address->format('html') ?></address>
50
+ </div>
51
+ </div>
52
+ </div>
53
+ <div class="col-wide span6">
54
+ <div class="box">
55
+ <div class="box-title">
56
+ <h2><?php echo $this->__('Payment Method') ?></h2>
57
+ </div>
58
+ <div class="box-content">
59
+ <div class="tool-tip" id="payment-tool-tip" style="display:none;">
60
+ <div class="btn-close"><a href="#" id="payment-tool-tip-close" title="<?php echo $this->__('Close') ?>"><?php echo $this->__('Close') ?></a></div>
61
+ <div class="tool-tip-content"><img src="<?php echo $this->getSkinUrl('images/cvv.gif') ?>" alt="<?php echo $this->__('Card Verification Number Visual Reference') ?>" title="<?php echo $this->__('Card Verification Number Visual Reference') ?>" /></div>
62
+ </div>
63
+ <!-- Payment methods forms list -->
64
+ <dl class="sp-methods">
65
+ <?php
66
+ $_methods = $this->getMethods();
67
+ $_methodsCount = count($_methods);
68
+ ?>
69
+ <?php foreach ($_methods as $_method): $_code = $_method->getCode() ?>
70
+ <dt>
71
+ <?php if ($_methodsCount > 1): ?>
72
+ <input type="radio" id="p_method_<?php echo $_code ?>" value="<?php echo $_code ?>" name="payment[method]" title="<?php echo $this->htmlEscape($_method->getTitle()) ?>" onclick="payment.switchMethod('<?php echo $_code ?>')"<?php if($this->getSelectedMethodCode()==$_code): ?> checked="checked"<?php endif; ?> class="radio" />
73
+ <?php else :?>
74
+ <span class="no-display"><input type="radio" id="p_method_<?php echo $_code ?>" value="<?php echo $_code ?>" name="payment[method]" checked="checked" class="radio" /></span>
75
+ <?php endif;?>
76
+ <label for="p_method_<?php echo $_code ?>"><?php echo $_method->getTitle() ?></label>
77
+ </dt>
78
+ <?php if($html = $this->getChildHtml('payment.method.'.$_code)) : ?>
79
+ <dd>
80
+ <?php echo $html; ?>
81
+ </dd>
82
+ <?php endif; ?>
83
+ <?php endforeach; ?>
84
+ </dl>
85
+ <?php echo $this->getChildHtml('checkout_billing_items') ?>
86
+ </div>
87
+ </div>
88
+ </div>
89
+ </div>
90
+ <div class="buttons-set">
91
+ <p class="back-link"><a href="<?php echo $this->getBackUrl() ?>"><small>&laquo; </small><?php echo $this->__('Back to Shipping Information') ?></a></p>
92
+ <button type="submit" title="<?php echo $this->__('Continue to Review Your Order') ?>" class="button"><span><span><?php echo $this->__('Continue to Review Your Order') ?></span></span></button>
93
+ </div>
94
+ </form>
95
+ <script type="text/javascript">
96
+ //<![CDATA[
97
+ var payment = new paymentForm('multishipping-billing-form');
98
+ function toggleToolTip(event){
99
+ if($('payment-tool-tip')){
100
+ /*$('payment-tool-tip').setStyle({
101
+ top: (Event.pointerY(event)-510)+'px',
102
+ left: (Event.pointerX(event)-800)+'px'
103
+ })*/
104
+ $('payment-tool-tip').toggle();
105
+ }
106
+ Event.stop(event);
107
+ }
108
+ if($('payment-tool-tip-close')){
109
+ Event.observe($('payment-tool-tip-close'), 'click', toggleToolTip);
110
+ }
111
+ $$('.cvv-what-is-this').each(function(element){
112
+ Event.observe(element, 'click', toggleToolTip);
113
+ });
114
+ //]]>
115
+ </script>
116
+ </div>
app/design/frontend/default/shoe_store/template/checkout/multishipping/billing.phtml~ ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Multishipping checkout billing information
30
+ *
31
+ * @see Mage_Checkout_Block_Multishipping_Billing
32
+ */
33
+ ?>
34
+ <div class="multiple-checkout">
35
+ <div class="page-title">
36
+ <h1><?php echo $this->__('Billing Information') ?></h1>
37
+ </div>
38
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
39
+ <script src="<?php echo Mage::getBaseUrl('js') ?>varien/payment.js" type="text/javascript"></script>
40
+ <form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="multishipping-billing-form">
41
+ <div class="col2-set">
42
+ <div class="col-1 col-narrow span6">
43
+ <div class="box">
44
+ <div class="box-title">
45
+ <h2><?php echo $this->__('Billing Address') ?> <span class="separator">|</span> <a href="<?php echo $this->getSelectAddressUrl() ?>"><?php echo $this->__('Change') ?></a></h2>
46
+ </div>
47
+ <div class="box-content">
48
+ <?php $_address=$this->getAddress() ?>
49
+ <address><?php echo $_address->format('html') ?></address>
50
+ </div>
51
+ </div>
52
+ </div>
53
+ <div class="col-2 col-wide span6">
54
+ <div class="box">
55
+ <div class="box-title">
56
+ <h2><?php echo $this->__('Payment Method') ?></h2>
57
+ </div>
58
+ <div class="box-content">
59
+ <div class="tool-tip" id="payment-tool-tip" style="display:none;">
60
+ <div class="btn-close"><a href="#" id="payment-tool-tip-close" title="<?php echo $this->__('Close') ?>"><?php echo $this->__('Close') ?></a></div>
61
+ <div class="tool-tip-content"><img src="<?php echo $this->getSkinUrl('images/cvv.gif') ?>" alt="<?php echo $this->__('Card Verification Number Visual Reference') ?>" title="<?php echo $this->__('Card Verification Number Visual Reference') ?>" /></div>
62
+ </div>
63
+ <!-- Payment methods forms list -->
64
+ <dl class="sp-methods">
65
+ <?php
66
+ $_methods = $this->getMethods();
67
+ $_methodsCount = count($_methods);
68
+ ?>
69
+ <?php foreach ($_methods as $_method): $_code = $_method->getCode() ?>
70
+ <dt>
71
+ <?php if ($_methodsCount > 1): ?>
72
+ <input type="radio" id="p_method_<?php echo $_code ?>" value="<?php echo $_code ?>" name="payment[method]" title="<?php echo $this->htmlEscape($_method->getTitle()) ?>" onclick="payment.switchMethod('<?php echo $_code ?>')"<?php if($this->getSelectedMethodCode()==$_code): ?> checked="checked"<?php endif; ?> class="radio" />
73
+ <?php else :?>
74
+ <span class="no-display"><input type="radio" id="p_method_<?php echo $_code ?>" value="<?php echo $_code ?>" name="payment[method]" checked="checked" class="radio" /></span>
75
+ <?php endif;?>
76
+ <label for="p_method_<?php echo $_code ?>"><?php echo $_method->getTitle() ?></label>
77
+ </dt>
78
+ <?php if($html = $this->getChildHtml('payment.method.'.$_code)) : ?>
79
+ <dd>
80
+ <?php echo $html; ?>
81
+ </dd>
82
+ <?php endif; ?>
83
+ <?php endforeach; ?>
84
+ </dl>
85
+ <?php echo $this->getChildHtml('checkout_billing_items') ?>
86
+ </div>
87
+ </div>
88
+ </div>
89
+ </div>
90
+ <div class="buttons-set">
91
+ <p class="back-link"><a href="<?php echo $this->getBackUrl() ?>"><small>&laquo; </small><?php echo $this->__('Back to Shipping Information') ?></a></p>
92
+ <button type="submit" title="<?php echo $this->__('Continue to Review Your Order') ?>" class="button"><span><span><?php echo $this->__('Continue to Review Your Order') ?></span></span></button>
93
+ </div>
94
+ </form>
95
+ <script type="text/javascript">
96
+ //<![CDATA[
97
+ var payment = new paymentForm('multishipping-billing-form');
98
+ function toggleToolTip(event){
99
+ if($('payment-tool-tip')){
100
+ /*$('payment-tool-tip').setStyle({
101
+ top: (Event.pointerY(event)-510)+'px',
102
+ left: (Event.pointerX(event)-800)+'px'
103
+ })*/
104
+ $('payment-tool-tip').toggle();
105
+ }
106
+ Event.stop(event);
107
+ }
108
+ if($('payment-tool-tip-close')){
109
+ Event.observe($('payment-tool-tip-close'), 'click', toggleToolTip);
110
+ }
111
+ $$('.cvv-what-is-this').each(function(element){
112
+ Event.observe(element, 'click', toggleToolTip);
113
+ });
114
+ //]]>
115
+ </script>
116
+ </div>
app/design/frontend/default/shoe_store/template/checkout/multishipping/shipping.phtml ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Multishipping checkout shipping template
30
+ *
31
+ * @see Mage_Checkout_Block_Multishipping_Shipping
32
+ * @var $this Mage_Checkout_Block_Multishipping_Shipping
33
+ */
34
+ ?>
35
+ <div class="multiple-checkout">
36
+ <div class="page-title">
37
+ <h1><?php echo $this->__('Select Shipping Method') ?></h1>
38
+ </div>
39
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
40
+ <form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="shipping_method_form">
41
+ <?php foreach ($this->getAddresses() as $_index => $_address): ?>
42
+ <div class="col2-set">
43
+ <h2 class="legend"><?php echo $this->__('Address %s of %s', ($_index+1), $this->getAddressCount()) ?></h2>
44
+ <div class="col-narrow span6">
45
+ <div class="box">
46
+ <div class="box-title">
47
+ <h3><?php echo $this->__('Shipping To') ?> <span class="separator">|</span> <a href="<?php echo $this->getAddressEditUrl($_address) ?>"><?php echo $this->__('Change') ?></a></h3>
48
+ </div>
49
+ <div class="box-content">
50
+ <address><?php echo $_address->format('html') ?></address>
51
+ </div>
52
+ </div>
53
+ <div class="box box-sp-methods">
54
+ <div class="pointer"></div>
55
+ <div class="box-title">
56
+ <h3><?php echo $this->__('Shipping Method') ?></h3>
57
+ </div>
58
+ <div class="box-content">
59
+ <?php if (!($_shippingRateGroups = $this->getShippingRates($_address))): ?>
60
+ <p><?php echo $this->__('Sorry, no quotes are available for this order at this time.') ?></p>
61
+ <?php else: ?>
62
+ <dl class="sp-methods">
63
+ <?php $_sole = count($_shippingRateGroups) == 1; foreach ($_shippingRateGroups as $code => $_rates): ?>
64
+ <dt><?php echo $this->escapeHtml($this->getCarrierName($code)) ?></dt>
65
+ <dd>
66
+ <ul>
67
+ <?php $_sole = $_sole && count($_rates) == 1; foreach ($_rates as $_rate): ?>
68
+ <li<?php if ($_rate->getErrorMessage()) echo ' class="error-msg"' ?>>
69
+ <?php if ($_rate->getErrorMessage()): ?>
70
+ <?php echo $this->escapeHtml($_rate->getCarrierTitle()) ?>: <?php echo $this->escapeHtml($_rate->getErrorMessage()) ?>
71
+ <?php else: ?>
72
+ <?php if ($_sole) : ?>
73
+ <span class="no-display"><input type="radio" name="shipping_method[<?php echo $_address->getId() ?>]" value="<?php echo $this->htmlEscape($_rate->getCode()) ?>" id="s_method_<?php echo $_address->getId() ?>_<?php echo $_rate->getCode() ?>" checked="checked"/></span>
74
+ <?php else: ?>
75
+ <input type="radio" name="shipping_method[<?php echo $_address->getId() ?>]" value="<?php echo $_rate->getCode() ?>" id="s_method_<?php echo $_address->getId() ?>_<?php echo $_rate->getCode() ?>"<?php if($_rate->getCode()===$this->getAddressShippingMethod($_address)) echo ' checked="checked"' ?> class="radio" />
76
+ <?php endif; ?>
77
+ <label for="s_method_<?php echo $_address->getId() ?>_<?php echo $_rate->getCode() ?>"><?php echo $this->escapeHtml($_rate->getMethodTitle()) ?>
78
+ <?php $_excl = $this->getShippingPrice($_address, $_rate->getPrice(), $this->helper('tax')->displayShippingPriceIncludingTax()); ?>
79
+ <?php $_incl = $this->getShippingPrice($_address, $_rate->getPrice(), true); ?>
80
+ <?php echo $_excl; ?>
81
+ <?php if ($this->helper('tax')->displayShippingBothPrices() && $_incl != $_excl): ?>
82
+ (<?php echo $this->__('Incl. Tax'); ?> <?php echo $_incl; ?>)
83
+ <?php endif; ?>
84
+ </label>
85
+ <?php endif ?>
86
+ </li>
87
+ <?php endforeach; ?>
88
+ </ul>
89
+ </dd>
90
+ <?php endforeach; ?>
91
+ </dl>
92
+ <?php endif; ?>
93
+ </div>
94
+ </div>
95
+ </div>
96
+ <div class="col-wide span6">
97
+ <?php echo $this->helper('giftmessage/message')->getInline('multishipping_adress_checkbox', $_address); ?>
98
+ <h3><?php echo $this->__('Items') ?> <span class="separator">|</span> <a href="<?php echo $this->getItemsEditUrl($_address) ?>"><?php echo $this->__('Edit Items') ?></a></h3>
99
+ <table class="data-table" id="shipping-table-<?php echo $_address->getId() ?>">
100
+ <col />
101
+ <col width="1" />
102
+ <thead>
103
+ <tr>
104
+ <th><?php echo $this->__('Product Name') ?></th>
105
+ <th class="a-center"><?php echo $this->__('Qty') ?></th>
106
+ </tr>
107
+ </thead>
108
+ <tbody>
109
+ <?php foreach ($this->getAddressItems($_address) as $_item): ?>
110
+ <tr>
111
+ <td>
112
+ <?php echo $this->getItemHtml($_item->getQuoteItem()) ?>
113
+ </td>
114
+ <td class="a-center"><?php echo $_item->getQty() ?></td>
115
+ </tr>
116
+ <?php endforeach; ?>
117
+ </tbody>
118
+ </table>
119
+ <script type="text/javascript">decorateTable('shipping-table-<?php echo $_address->getId() ?>')</script>
120
+ <?php echo $this->helper('giftmessage/message')->getInline('multishipping_adress', $_address); ?>
121
+ </div>
122
+ </div>
123
+ <?php endforeach; ?>
124
+ <?php echo $this->getChildHtml('checkout_billing_items') ?>
125
+ <div class="buttons-set">
126
+ <p class="back-link"><a href="<?php echo $this->getBackUrl() ?>"><small>&laquo; </small><?php echo $this->__('Back to Select Addresses') ?></a></p>
127
+ <button type="submit" title="<?php echo $this->__('Continue to Billing Information') ?>" class="button"><span><span><?php echo $this->__('Continue to Billing Information') ?></span></span></button>
128
+ </div>
129
+ </form>
130
+ </div>
app/design/frontend/default/shoe_store/template/checkout/multishipping/shipping.phtml~ ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Multishipping checkout shipping template
30
+ *
31
+ * @see Mage_Checkout_Block_Multishipping_Shipping
32
+ * @var $this Mage_Checkout_Block_Multishipping_Shipping
33
+ */
34
+ ?>
35
+ <div class="multiple-checkout">
36
+ <div class="page-title">
37
+ <h1><?php echo $this->__('Select Shipping Method') ?></h1>
38
+ </div>
39
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
40
+ <form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="shipping_method_form">
41
+ <?php foreach ($this->getAddresses() as $_index => $_address): ?>
42
+ <div class="col2-set">
43
+ <h2 class="legend"><?php echo $this->__('Address %s of %s', ($_index+1), $this->getAddressCount()) ?></h2>
44
+ <div class="col-1 col-narrow">
45
+ <div class="box">
46
+ <div class="box-title">
47
+ <h3><?php echo $this->__('Shipping To') ?> <span class="separator">|</span> <a href="<?php echo $this->getAddressEditUrl($_address) ?>"><?php echo $this->__('Change') ?></a></h3>
48
+ </div>
49
+ <div class="box-content">
50
+ <address><?php echo $_address->format('html') ?></address>
51
+ </div>
52
+ </div>
53
+ <div class="box box-sp-methods">
54
+ <div class="pointer"></div>
55
+ <div class="box-title">
56
+ <h3><?php echo $this->__('Shipping Method') ?></h3>
57
+ </div>
58
+ <div class="box-content">
59
+ <?php if (!($_shippingRateGroups = $this->getShippingRates($_address))): ?>
60
+ <p><?php echo $this->__('Sorry, no quotes are available for this order at this time.') ?></p>
61
+ <?php else: ?>
62
+ <dl class="sp-methods">
63
+ <?php $_sole = count($_shippingRateGroups) == 1; foreach ($_shippingRateGroups as $code => $_rates): ?>
64
+ <dt><?php echo $this->escapeHtml($this->getCarrierName($code)) ?></dt>
65
+ <dd>
66
+ <ul>
67
+ <?php $_sole = $_sole && count($_rates) == 1; foreach ($_rates as $_rate): ?>
68
+ <li<?php if ($_rate->getErrorMessage()) echo ' class="error-msg"' ?>>
69
+ <?php if ($_rate->getErrorMessage()): ?>
70
+ <?php echo $this->escapeHtml($_rate->getCarrierTitle()) ?>: <?php echo $this->escapeHtml($_rate->getErrorMessage()) ?>
71
+ <?php else: ?>
72
+ <?php if ($_sole) : ?>
73
+ <span class="no-display"><input type="radio" name="shipping_method[<?php echo $_address->getId() ?>]" value="<?php echo $this->htmlEscape($_rate->getCode()) ?>" id="s_method_<?php echo $_address->getId() ?>_<?php echo $_rate->getCode() ?>" checked="checked"/></span>
74
+ <?php else: ?>
75
+ <input type="radio" name="shipping_method[<?php echo $_address->getId() ?>]" value="<?php echo $_rate->getCode() ?>" id="s_method_<?php echo $_address->getId() ?>_<?php echo $_rate->getCode() ?>"<?php if($_rate->getCode()===$this->getAddressShippingMethod($_address)) echo ' checked="checked"' ?> class="radio" />
76
+ <?php endif; ?>
77
+ <label for="s_method_<?php echo $_address->getId() ?>_<?php echo $_rate->getCode() ?>"><?php echo $this->escapeHtml($_rate->getMethodTitle()) ?>
78
+ <?php $_excl = $this->getShippingPrice($_address, $_rate->getPrice(), $this->helper('tax')->displayShippingPriceIncludingTax()); ?>
79
+ <?php $_incl = $this->getShippingPrice($_address, $_rate->getPrice(), true); ?>
80
+ <?php echo $_excl; ?>
81
+ <?php if ($this->helper('tax')->displayShippingBothPrices() && $_incl != $_excl): ?>
82
+ (<?php echo $this->__('Incl. Tax'); ?> <?php echo $_incl; ?>)
83
+ <?php endif; ?>
84
+ </label>
85
+ <?php endif ?>
86
+ </li>
87
+ <?php endforeach; ?>
88
+ </ul>
89
+ </dd>
90
+ <?php endforeach; ?>
91
+ </dl>
92
+ <?php endif; ?>
93
+ </div>
94
+ </div>
95
+ </div>
96
+ <div class="col-2 col-wide">
97
+ <?php echo $this->helper('giftmessage/message')->getInline('multishipping_adress_checkbox', $_address); ?>
98
+ <h3><?php echo $this->__('Items') ?> <span class="separator">|</span> <a href="<?php echo $this->getItemsEditUrl($_address) ?>"><?php echo $this->__('Edit Items') ?></a></h3>
99
+ <table class="data-table" id="shipping-table-<?php echo $_address->getId() ?>">
100
+ <col />
101
+ <col width="1" />
102
+ <thead>
103
+ <tr>
104
+ <th><?php echo $this->__('Product Name') ?></th>
105
+ <th class="a-center"><?php echo $this->__('Qty') ?></th>
106
+ </tr>
107
+ </thead>
108
+ <tbody>
109
+ <?php foreach ($this->getAddressItems($_address) as $_item): ?>
110
+ <tr>
111
+ <td>
112
+ <?php echo $this->getItemHtml($_item->getQuoteItem()) ?>
113
+ </td>
114
+ <td class="a-center"><?php echo $_item->getQty() ?></td>
115
+ </tr>
116
+ <?php endforeach; ?>
117
+ </tbody>
118
+ </table>
119
+ <script type="text/javascript">decorateTable('shipping-table-<?php echo $_address->getId() ?>')</script>
120
+ <?php echo $this->helper('giftmessage/message')->getInline('multishipping_adress', $_address); ?>
121
+ </div>
122
+ </div>
123
+ <?php endforeach; ?>
124
+ <?php echo $this->getChildHtml('checkout_billing_items') ?>
125
+ <div class="buttons-set">
126
+ <p class="back-link"><a href="<?php echo $this->getBackUrl() ?>"><small>&laquo; </small><?php echo $this->__('Back to Select Addresses') ?></a></p>
127
+ <button type="submit" title="<?php echo $this->__('Continue to Billing Information') ?>" class="button"><span><span><?php echo $this->__('Continue to Billing Information') ?></span></span></button>
128
+ </div>
129
+ </form>
130
+ </div>
app/design/frontend/default/shoe_store/template/customer/account/dashboard.phtml ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="dashboard">
28
+ <div class="page-title">
29
+ <h1><?php echo $this->__('My Dashboard') ?></h1>
30
+ </div>
31
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
32
+ <?php echo $this->getChildHtml('hello') ?>
33
+ <?php echo $this->getChildHtml('top') ?>
34
+ <div class="box-account box-info">
35
+ <div class="box-head">
36
+ <h2><?php echo $this->__('Account Information') ?></h2>
37
+ </div>
38
+ <?php /* Extensions placeholder */ ?>
39
+ <?php echo $this->getChildHtml('customer.account.dashboard.extra') ?>
40
+ <?php echo $this->getChildHtml('info') ?>
41
+ <?php echo $this->getChildHtml('address') ?>
42
+ </div>
43
+ <?php echo $this->getChildHtml('info1') ?>
44
+ <?php echo $this->getChildHtml('info2') ?>
45
+ </div>
app/design/frontend/default/shoe_store/template/customer/account/dashboard/address.phtml ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="col2-set">
28
+ <div class="box">
29
+ <div class="box-title">
30
+ <h3><?php echo $this->__('Address Book') ?></h3>
31
+ <a href="<?php echo $this->getAddressBookUrl() ?>"><?php echo $this->__('Manage Addresses') ?></a>
32
+ </div>
33
+ <div class="box-content">
34
+ <div class="col-1">
35
+ <h4><?php echo $this->__('Default Billing Address') ?></h4>
36
+ <address>
37
+ <?php echo $this->getPrimaryBillingAddressHtml() ?><br />
38
+ <a href="<?php echo $this->getPrimaryBillingAddressEditUrl() ?>"><?php echo $this->__('Edit Address') ?></a>
39
+ </address>
40
+ </div>
41
+ <div class="col-2">
42
+ <h4><?php echo $this->__('Default Shipping Address') ?></h4>
43
+ <address>
44
+ <?php echo $this->getPrimaryShippingAddressHtml() ?><br />
45
+ <a href="<?php echo $this->getPrimaryShippingAddressEditUrl() ?>"><?php echo $this->__('Edit Address') ?></a>
46
+ </address>
47
+ </div>
48
+ </div>
49
+ </div>
50
+ </div>
app/design/frontend/default/shoe_store/template/customer/account/dashboard/hello.phtml ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="welcome-msg">
28
+ <p class="hello"><strong><?php echo $this->__('Hello, %s!', $this->htmlEscape($this->getCustomerName())) ?></strong></p>
29
+ <p><?php echo $this->__('From your My Account Dashboard you have the ability to view a snapshot of your recent account activity and update your account information. Select a link below to view or edit information.') ?></p>
30
+ </div>
app/design/frontend/default/shoe_store/template/customer/account/dashboard/info.phtml ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="col2-set row-fluid">
28
+ <div class="span6">
29
+ <div class="box">
30
+ <div class="box-title">
31
+ <h3><?php echo $this->__('Contact Information') ?></h3>
32
+ <a href="<?php echo $this->getUrl('customer/account/edit') ?>"><?php echo $this->__('Edit') ?></a>
33
+ </div>
34
+ <div class="box-content">
35
+ <p>
36
+ <?php echo $this->htmlEscape($this->getCustomer()->getName()) ?><br />
37
+ <?php echo $this->htmlEscape($this->getCustomer()->getEmail()) ?><br />
38
+ <a href="<?php echo $this->getChangePasswordUrl() ?>"><?php echo $this->__('Change Password') ?></a>
39
+ </p>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ <?php if( $this->isNewsletterEnabled() ): ?>
44
+ <div class="span6">
45
+ <div class="box">
46
+ <div class="box-title">
47
+ <h3><?php echo $this->__('Newsletters') ?></h3>
48
+ <a href="<?php echo $this->getUrl('newsletter/manage') ?>"><?php echo $this->__('Edit') ?></a>
49
+ </div>
50
+ <div class="box-content">
51
+ <p>
52
+ <?php if( $this->getIsSubscribed() ): ?>
53
+ <?php echo $this->__("You are currently subscribed to 'General Subscription'.") ?>
54
+ <?php else: ?>
55
+ <?php echo $this->__('You are currently not subscribed to any newsletter.') ?>
56
+ <?php endif; ?>
57
+ </p>
58
+ </div>
59
+ </div>
60
+ <?php /* Extensions placeholder */ ?>
61
+ <?php echo $this->getChildHtml('customer.account.dashboard.info.extra')?>
62
+ </div>
63
+ <?php endif; ?>
64
+ </div>
app/design/frontend/default/shoe_store/template/customer/account/dashboard/info.phtml~ ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="col2-set">
28
+ <div class="span6">
29
+ <div class="box">
30
+ <div class="box-title">
31
+ <h3><?php echo $this->__('Contact Information') ?></h3>
32
+ <a href="<?php echo $this->getUrl('customer/account/edit') ?>"><?php echo $this->__('Edit') ?></a>
33
+ </div>
34
+ <div class="box-content">
35
+ <p>
36
+ <?php echo $this->htmlEscape($this->getCustomer()->getName()) ?><br />
37
+ <?php echo $this->htmlEscape($this->getCustomer()->getEmail()) ?><br />
38
+ <a href="<?php echo $this->getChangePasswordUrl() ?>"><?php echo $this->__('Change Password') ?></a>
39
+ </p>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ <?php if( $this->isNewsletterEnabled() ): ?>
44
+ <div class="span6">
45
+ <div class="box">
46
+ <div class="box-title">
47
+ <h3><?php echo $this->__('Newsletters') ?></h3>
48
+ <a href="<?php echo $this->getUrl('newsletter/manage') ?>"><?php echo $this->__('Edit') ?></a>
49
+ </div>
50
+ <div class="box-content">
51
+ <p>
52
+ <?php if( $this->getIsSubscribed() ): ?>
53
+ <?php echo $this->__("You are currently subscribed to 'General Subscription'.") ?>
54
+ <?php else: ?>
55
+ <?php echo $this->__('You are currently not subscribed to any newsletter.') ?>
56
+ <?php endif; ?>
57
+ </p>
58
+ </div>
59
+ </div>
60
+ <?php /* Extensions placeholder */ ?>
61
+ <?php echo $this->getChildHtml('customer.account.dashboard.info.extra')?>
62
+ </div>
63
+ <?php endif; ?>
64
+ </div>
app/design/frontend/default/shoe_store/template/customer/account/dashboard/newsletter.phtml ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="col-2">
28
+ <h4><?php echo $this->__('Newsletters') ?></h4>
29
+ <a href="<?php echo $this->getUrl('newsletter/manage') ?>"><?php echo $this->__('Edit Newsletters') ?></a>
30
+ <p><?php echo $this->__('You are currently subscribed to our newsletter.') ?></p>
31
+ </div>
app/design/frontend/default/shoe_store/template/customer/account/link/back.phtml ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="buttons-set">
28
+ <p class="back-link"><a href="<?php echo $this->escapeUrl($this->getBackUrl()) ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
29
+ </div>
app/design/frontend/default/shoe_store/template/customer/account/navigation.phtml ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="block block-account">
28
+ <div class="block-title">
29
+ <strong><span><?php echo $this->__('My Account'); ?></span></strong>
30
+ </div>
31
+ <div class="block-content">
32
+ <ul>
33
+ <?php $_links = $this->getLinks(); ?>
34
+ <?php $_index = 1; ?>
35
+ <?php $_count = count($_links); ?>
36
+ <?php foreach ($_links as $_link): ?>
37
+ <?php $_last = ($_index++ >= $_count); ?>
38
+ <?php if ($this->isActive($_link)): ?>
39
+ <li class="current<?php echo ($_last ? ' last' : '') ?>"><strong><?php echo $_link->getLabel() ?></strong></li>
40
+ <?php else: ?>
41
+ <li<?php echo ($_last ? ' class="last"' : '') ?>><a href="<?php echo $_link->getUrl() ?>"><?php echo $_link->getLabel() ?></a></li>
42
+ <?php endif; ?>
43
+ <?php endforeach; ?>
44
+ </ul>
45
+ </div>
46
+ </div>
app/design/frontend/default/shoe_store/template/customer/address.phtml ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="page-title">
28
+ <h1><?php echo $this->__('Address Books') ?></h1>
29
+ </div>
30
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
31
+ <table width="100%">
32
+ <tr>
33
+ <td style="width:50%;"><h3>Default</h3>
34
+ <table width="100%">
35
+ <?php if(!empty($primaryAddresses)): ?>
36
+ <?php foreach($primaryAddresses as $_address): ?>
37
+ <tr>
38
+ <td>
39
+ <address>
40
+ <?php echo $_address->format('html') ?>
41
+ </address>
42
+ <p>
43
+ <strong><a href="<?php echo $this->getUrl('customer/address/form', array('address'=>$_address->getAddressId())) ?>" class="red-link"><?php echo $this->__('Edit Address') ?></a></strong>
44
+ </p>
45
+ </td>
46
+ </tr>
47
+ <?php endforeach; ?>
48
+ <?php else: ?>
49
+ <tr>
50
+ <td>
51
+ <p><?php echo $this->__('You have no default entries in your address book.') ?></p>
52
+ </td>
53
+ </tr>
54
+ <?php endif ?>
55
+ </table>
56
+ </td>
57
+ <td style="width:50%;"><h3><?php echo $this->__('Additional Address Entries') ?></h3>
58
+ <table width="100%">
59
+ <?php if(!empty($alternativeAddresses)): ?>
60
+ <?php foreach($alternativeAddresses as $_address): ?>
61
+ <tr>
62
+ <td>
63
+ <address>
64
+ <?php echo $_address->format('html') ?>
65
+ </address>
66
+ <p>
67
+ <strong><a href="<?php echo $this->getUrl('customer/address/form', array('address'=>$_address->getAddressId())) ?>" class="red-link"><?php echo $this->__('Edit Address') ?></a></strong><span class="separator">&nbsp;|&nbsp;</span><strong><a href="#" onclick="return deleteAddress('<?php echo $_address->getAddressId() ?>');" class="red-link"><?php echo $this->__('Delete Address') ?></a></strong>
68
+ </p>
69
+ </td>
70
+ </tr>
71
+ <?php endforeach; ?>
72
+ <?php else: ?>
73
+ <tr>
74
+ <td>
75
+ <p><?php echo $this->__('You have no additional entries in your address book.') ?></p>
76
+ </td>
77
+ </tr>
78
+ <?php endif ?>
79
+ </table>
80
+ </td>
81
+ </tr>
82
+ </table>
83
+ <div class="buttons-set">
84
+ <p class="back-link"><a href="<?php echo $this->getUrl('customer/account/') ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
85
+ <button type="button" onclick="window.location='<?php echo $this->getUrl('customer/address/form') ?>';" class="button"><span><span><?php echo $this->__('New Address') ?></span></span></button>
86
+ </div>
87
+ <script type="text/javascript">
88
+ function deleteAddress(addressId) {
89
+ if(confirm('<?php echo $this->__('Are you sure you want to delete this address?') ?>')) {
90
+ window.location='<?php echo $this->getUrl("customer/address/delete") ?>address/'+addressId;
91
+ }
92
+ return false;
93
+ }
94
+ </script>
app/design/frontend/default/shoe_store/template/customer/balance.phtml ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
28
+ <?php echo $this->__('Your account balance is: %s', $customer->getStoreBalance()) ?>
29
+ <div class="buttons-set">
30
+ <p class="back-link"><a href="<?php echo $this->getUrl('customer/account') ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
31
+ </div>
app/design/frontend/default/shoe_store/template/customer/form/address.phtml ADDED
@@ -0,0 +1,143 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <script type="text/javascript">countryRegions = <?php echo $this->helper('directory')->getRegionJson() ?></script>
28
+
29
+ <div class="page-title">
30
+ <h1><?php if($data->getAddressId()): ?><?php echo $this->__('Edit Address Entry') ?><?php else: ?><?php echo $this->__('New Address Entry') ?><?php endif ?></h1>
31
+ </div>
32
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
33
+ <form action="<?php echo $action ?>" method="post" id="form-validate">
34
+ <div class="fieldset">
35
+ <input type="hidden" name="address_id" value="<?php echo $data->getAddressId() ?>" />
36
+ <input type="hidden" name="customer_id" id="address_id" value="<?php echo $data->getCustomerId() ?>" />
37
+ <h2 class="legend"><?php echo $this->__('Personal Information') ?></h2>
38
+ <ul class="form-list">
39
+ <li class="fields">
40
+ <?php echo $this->getLayout()->createBlock('customer/widget_name')->setObject($data)->toHtml() ?>
41
+ </li>
42
+ <li>
43
+ <label for="company"><?php echo $this->__('Company') ?></label>
44
+ <div class="input-box">
45
+ <input type="text" name="company" id="company" title="<?php echo $this->__('Company') ?>" value="<?php echo $this->escapeHtml($data->getCompany()) ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('company') ?>" />
46
+ </div>
47
+ </li>
48
+ </ul>
49
+ </div>
50
+ <div class="fieldset">
51
+ <h2 class="legend"><?php echo $this->__('Address') ?></h2>
52
+ <ul class="form-list">
53
+ <?php $_streetValidationClass = $this->helper('customer/address')->getAttributeValidationClass('street'); ?>
54
+ <li class="wide">
55
+ <label for="street_1" class="required"><em>*</em><?php echo $this->__('Street Address') ?></label>
56
+ <div class="input-box">
57
+ <input type="text" name="street[]" value="<?php echo $this->escapeHtml($data->getStreet(1)) ?>" title="<?php echo $this->__('Street Address') ?>" id="street_1" class="input-text <?php echo $_streetValidationClass ?>" />
58
+ </div>
59
+ </li>
60
+ <?php $_streetValidationClass = trim(str_replace('required-entry', '', $_streetValidationClass)); ?>
61
+ <?php for ($_i = 2, $_n = $this->helper('customer/address')->getStreetLines(); $_i <= $_n; $_i++): ?>
62
+ <li class="wide">
63
+ <div class="input-box">
64
+ <input type="text" name="street[]" value="<?php echo $this->escapeHtml($data->getStreet($_i)) ?>" title="<?php echo $this->__('Street Address %s', $_i) ?>" id="street_<?php echo $_i ?>" class="input-text <?php echo $_streetValidationClass ?>" />
65
+ </div>
66
+ </li>
67
+ <?php endfor; ?>
68
+ <li class="fields">
69
+ <div class="field">
70
+ <label for="city" class="required"><em>*</em><?php echo $this->__('City') ?></label>
71
+ <div class="input-box">
72
+ <input type="text" name="city" value="<?php echo $this->escapeHtml($data->getCity()) ?>" title="<?php echo $this->__('City') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('city') ?>" id="city" />
73
+ </div>
74
+ </div>
75
+ <div class="field">
76
+ <label for="region_id" class="required"><em>*</em><?php echo $this->__('State/Province') ?></label>
77
+ <div class="input-box">
78
+ <select id="region_id" name="region_id" title="<?php echo $this->__('State/Province') ?>" class="validate-select" style="display:none;">
79
+ <option value=""><?php echo $this->__('Please select region, state or province') ?></option>
80
+ </select>
81
+ <script type="text/javascript">
82
+ //<![CDATA[
83
+ $('region_id').setAttribute('defaultValue', "<?php echo $this->getAddress()->getRegionId() ?>");
84
+ //]]>
85
+ </script>
86
+ <input type="text" id="region" name="region" value="<?php echo $this->escapeHtml($this->getAddress()->getRegion()) ?>" title="<?php echo $this->__('State/Province') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('region') ?>" style="display:none;" />
87
+ </div>
88
+ </div>
89
+ </li>
90
+ <li class="fields">
91
+ <div class="field">
92
+ <label for="zip" class="required"><em>*</em><?php echo $this->__('Zip/Postal Code') ?></label>
93
+ <div class="input-box">
94
+ <input type="text" name="postcode" value="<?php echo $this->escapeHtml($data->getPostcode()) ?>" title="<?php echo $this->__('Zip/Postal Code') ?>" id="zip" class="input-text validate-zip-international <?php echo $this->helper('customer/address')->getAttributeValidationClass('postcode') ?>" />
95
+ </div>
96
+ </div>
97
+ <div class="field">
98
+ <label for="country" class="required"><em>*</em><?php echo $this->__('Country') ?></label>
99
+ <div class="input-box">
100
+ <select name="country_id" id="country" title="<?php echo $this->__('Country') ?>" class="validate-select">
101
+ <?php echo $countries->toHtmlOptions($data->getCountryId()) ?>
102
+ </select>
103
+ </div>
104
+ </div>
105
+ </li>
106
+ <li class="fields">
107
+ <div class="field">
108
+ <label for="telephone" class="required"><em>*</em><?php echo $this->__('Telephone') ?></label>
109
+ <div class="input-box">
110
+ <input type="text" name="telephone" value="<?php echo $this->escapeHtml($data->getTelephone()) ?>" title="<?php echo $this->__('Telephone') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('telephone') ?>" id="telephone" />
111
+ </div>
112
+ </div>
113
+ <div class="field">
114
+ <label for="fax"><?php echo $this->__('Fax') ?></label>
115
+ <div class="input-box">
116
+ <input type="text" name="fax" value="<?php echo $this->escapeHtml($data->getFax()) ?>" title="<?php echo $this->__('Fax') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('fax') ?>" id="fax" />
117
+ </div>
118
+ </div>
119
+ </li>
120
+ <?php foreach ($primaryTypes as $code=>$type): ?>
121
+ <li<?php if (!$address->isPrimary($type['address_type_id'])) echo ' class="control"' ?>>
122
+ <?php if ($address->isPrimary($type['address_type_id'])): ?>
123
+ <strong><?php echo $this->__("This is My Default %s Address", ucfirst($type['name'])) ?></strong>
124
+ <?php else: ?>
125
+ <input type="checkbox" id="primary_<?php echo $code ?>" name="primary_types[]" value="<?php echo $type['address_type_id'] ?>" class="checkbox" /><label for="primary_<?php echo $code ?>"><?php echo $this->__("Use as My Default %s Address", ucfirst($type['name'])) ?></label>
126
+ <?php endif ?>
127
+ </li>
128
+ <?php endforeach ?>
129
+ </ul>
130
+ </div>
131
+ <div class="buttons-set">
132
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
133
+ <p class="back-link"><a href="<?php echo $this->getUrl('customer/address/') ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
134
+ <button type="submit" class="button" title="<?php echo $this->__('Save Address') ?>"><span><span><?php echo $this->__('Save Address') ?></span></span></button>
135
+ </div>
136
+ </form>
137
+ <script type="text/javascript">
138
+ //<![CDATA[
139
+ var dataForm = new VarienForm('form-validate', true);
140
+ //dataForm.setElementsRelation('country', 'state', '<?php echo $this->getUrl('directory/json/childRegion') ?>');
141
+ new RegionUpdater('country', 'region', 'region_id', countryRegions, undefined, 'zip');
142
+ //]]>
143
+ </script>
app/design/frontend/default/shoe_store/template/customer/form/changepassword.phtml ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="page-title">
28
+ <h1><?php echo $this->__('Change Account Password') ?></h1>
29
+ </div>
30
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
31
+ <form action="<?php echo $action ?>" method="post" id="form-validate">
32
+ <div class="fieldset">
33
+ <h2 class="legend"><?php echo $this->__('Change Account Password') ?></h2>
34
+ <ul class="form-list">
35
+ <li>
36
+ <label for="current_password" class="required"><em>*</em><?php echo $this->__('Current Password') ?></label>
37
+ <div class="input-box">
38
+ <input type="password" title="<?php echo $this->__('Current Password') ?>" class="input-text required-entry" name="current_password" id="current_password" />
39
+ </div>
40
+ </li>
41
+ <li class="fields">
42
+ <div class="field">
43
+ <label for="password" class="required"><em>*</em><?php echo $this->__('New Password') ?></label>
44
+ <div class="input-box">
45
+ <input type="password" title="<?php echo $this->__('New Password') ?>" class="input-text required-entry validate-password" name="password" id="password" />
46
+ </div>
47
+ </div>
48
+ <div class="field">
49
+ <label for="confirmation" class="required"><em>*</em><?php echo $this->__('Confirm New Password') ?></label>
50
+ <div class="input-box">
51
+ <input type="password" title="<?php echo $this->__('Confirm New Password') ?>" class="input-text required-entry validate-cpassword" name="confirmation" id="confirmation" />
52
+ </div>
53
+ </div>
54
+ </li>
55
+ </ul>
56
+ </div>
57
+ <div class="buttons-set">
58
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
59
+ <p class="back-link"><a href="<?php echo $this->getUrl('customer/account') ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
60
+ <button type="submit" title="<?php echo $this->__('Save Password') ?>" class="button"><span><span><?php echo $this->__('Save Password') ?></span></span></button>
61
+ </div>
62
+ </form>
63
+ <script type="text/javascript">
64
+ //<![CDATA[
65
+ var dataForm = new VarienForm('form-validate');
66
+ //]]>
67
+ </script>
app/design/frontend/default/shoe_store/template/customer/form/confirmation.phtml ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="page-title">
28
+ <h1><?php echo $this->__('Send confirmation link') ?></h1>
29
+ </div>
30
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
31
+ <form action="" method="post" id="form-validate">
32
+ <div class="fieldset">
33
+ <h2 class="legend"><?php echo $this->__('Retrieve your confirmation link here') ?></h2>
34
+ <p><?php echo $this->__('Please enter your email below and we\'ll send you confirmation link for it.') ?></p>
35
+ <ul class="form-list">
36
+ <li>
37
+ <label for="email_address" class="required"><em>*</em><?php echo $this->__('Email Address') ?></label>
38
+ <div class="input-box">
39
+ <input type="text" name="email" id="email_address" title="<?php echo $this->__('Email Address') ?>" class="input-text required-entry validate-email" value="<?php echo $this->htmlEscape($this->getEmail()) ?>" />
40
+ </div>
41
+ </li>
42
+ </ul>
43
+ </div>
44
+ <div class="buttons-set">
45
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
46
+ <p class="back-link"><a href="<?php echo $this->helper('customer')->getLoginUrl() ?>"><small>&laquo; </small><?php echo $this->__('Back to Login') ?></a></p>
47
+ <button type="submit" title="<?php echo $this->__('Submit') ?>" class="button"><span><span><?php echo $this->__('Submit') ?></span></span></button>
48
+ </div>
49
+ </form>
50
+ <script type="text/javascript">
51
+ //<![CDATA[
52
+ var dataForm = new VarienForm('form-validate', true);
53
+ //]]>
54
+ </script>
app/design/frontend/default/shoe_store/template/customer/form/edit.phtml ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="page-title">
28
+ <h1><?php echo $this->__('Edit Account Information') ?></h1>
29
+ </div>
30
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
31
+ <form action="<?php echo $this->getUrl('customer/account/editPost') ?>" method="post" id="form-validate">
32
+ <div class="fieldset">
33
+ <?php echo $this->getBlockHtml('formkey')?>
34
+ <h2 class="legend"><?php echo $this->__('Account Information') ?></h2>
35
+ <ul class="form-list">
36
+ <li class="fields">
37
+ <?php echo $this->getLayout()->createBlock('customer/widget_name')->setObject($this->getCustomer())->toHtml() ?>
38
+ </li>
39
+ <li>
40
+ <label for="email" class="required"><em>*</em><?php echo $this->__('Email Address') ?></label>
41
+ <div class="input-box">
42
+ <input type="text" name="email" id="email" value="<?php echo $this->htmlEscape($this->getCustomer()->getEmail()) ?>" title="<?php echo $this->__('Email Address') ?>" class="input-text required-entry validate-email" />
43
+ </div>
44
+ </li>
45
+ <?php $_dob = $this->getLayout()->createBlock('customer/widget_dob') ?>
46
+ <?php if ($_dob->isEnabled()): ?>
47
+ <li><?php echo $_dob->setDate($this->getCustomer()->getDob())->toHtml() ?></li>
48
+ <?php endif ?>
49
+ <?php $_taxvat = $this->getLayout()->createBlock('customer/widget_taxvat') ?>
50
+ <?php if ($_taxvat->isEnabled()): ?>
51
+ <li><?php echo $_taxvat->setTaxvat($this->getCustomer()->getTaxvat())->toHtml() ?></li>
52
+ <?php endif ?>
53
+ <?php $_gender = $this->getLayout()->createBlock('customer/widget_gender') ?>
54
+ <?php if ($_gender->isEnabled()): ?>
55
+ <li><?php echo $_gender->setGender($this->getCustomer()->getGender())->toHtml() ?></li>
56
+ <?php endif ?>
57
+ <li class="control">
58
+ <input type="checkbox" name="change_password" id="change_password" value="1" onclick="setPasswordForm(this.checked)" title="<?php echo $this->__('Change Password') ?>"<?php if($this->getCustomer()->getChangePassword()==1): ?> checked="checked"<?php endif; ?> class="checkbox" /><label for="change_password"><?php echo $this->__('Change Password') ?></label>
59
+ </li>
60
+ </ul>
61
+ </div>
62
+ <div class="fieldset" style="display:none;">
63
+ <h2 class="legend"><?php echo $this->__('Change Password') ?></h2>
64
+ <ul class="form-list">
65
+ <li>
66
+ <label for="current_password" class="required"><em>*</em><?php echo $this->__('Current Password') ?></label>
67
+ <div class="input-box">
68
+ <input type="password" title="<?php echo $this->__('Current Password') ?>" class="input-text" name="current_password" id="current_password" />
69
+ </div>
70
+ </li>
71
+ <li class="fields">
72
+ <div class="field">
73
+ <label for="password" class="required"><em>*</em><?php echo $this->__('New Password') ?></label>
74
+ <div class="input-box">
75
+ <input type="password" title="<?php echo $this->__('New Password') ?>" class="input-text validate-password" name="password" id="password" />
76
+ </div>
77
+ </div>
78
+ <div class="field">
79
+ <label for="confirmation" class="required"><em>*</em><?php echo $this->__('Confirm New Password') ?></label>
80
+ <div class="input-box">
81
+ <input type="password" title="<?php echo $this->__('Confirm New Password') ?>" class="input-text validate-cpassword" name="confirmation" id="confirmation" />
82
+ </div>
83
+ </div>
84
+ </li>
85
+ </ul>
86
+ </div>
87
+ <div class="buttons-set">
88
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
89
+ <p class="back-link"><a href="<?php echo $this->escapeUrl($this->getBackUrl()) ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
90
+ <button type="submit" title="<?php echo $this->__('Save') ?>" class="button"><span><span><?php echo $this->__('Save') ?></span></span></button>
91
+ </div>
92
+ </form>
93
+ <script type="text/javascript">
94
+ //<![CDATA[
95
+ var dataForm = new VarienForm('form-validate', true);
96
+ function setPasswordForm(arg){
97
+ if(arg){
98
+ $('current_password').up(3).show();
99
+ $('current_password').addClassName('required-entry');
100
+ $('password').addClassName('required-entry');
101
+ $('confirmation').addClassName('required-entry');
102
+
103
+ }else{
104
+ $('current_password').up(3).hide();
105
+ $('current_password').removeClassName('required-entry');
106
+ $('password').removeClassName('required-entry');
107
+ $('confirmation').removeClassName('required-entry');
108
+ }
109
+ }
110
+ <?php if($this->getCustomer()->getChangePassword()): ?>
111
+ setPasswordForm(true);
112
+ <?php endif; ?>
113
+ //]]>
114
+ </script>
app/design/frontend/default/shoe_store/template/customer/form/forgotpassword.phtml ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="page-title">
28
+ <h1><?php echo $this->__('Forgot Your Password?') ?></h1>
29
+ </div>
30
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
31
+ <form action="<?php echo $this->getUrl('*/*/forgotpasswordpost') ?>" method="post" id="form-validate">
32
+ <div class="fieldset">
33
+ <h2 class="legend"><?php echo $this->__('Retrieve your password here') ?></h2>
34
+ <p><?php echo $this->__('Please enter your email address below. You will receive a link to reset your password.') ?></p>
35
+ <ul class="form-list">
36
+ <li>
37
+ <label for="email_address" class="required"><em>*</em><?php echo $this->__('Email Address') ?></label>
38
+ <div class="input-box">
39
+ <input type="text" name="email" alt="email" id="email_address" class="input-text required-entry validate-email" value="<?php echo $this->htmlEscape($this->getEmailValue()) ?>" />
40
+ </div>
41
+ </li>
42
+ <?php echo $this->getChildHtml('form.additional.info'); ?>
43
+ </ul>
44
+ </div>
45
+ <div class="buttons-set">
46
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
47
+ <p class="back-link"><a href="<?php echo $this->helper('customer')->getLoginUrl() ?>"><small>&laquo; </small><?php echo $this->__('Back to Login') ?></a></p>
48
+ <button type="submit" title="<?php echo $this->__('Submit') ?>" class="button"><span><span><?php echo $this->__('Submit') ?></span></span></button>
49
+ </div>
50
+ </form>
51
+ <script type="text/javascript">
52
+ //<![CDATA[
53
+ var dataForm = new VarienForm('form-validate', true);
54
+ //]]>
55
+ </script>
app/design/frontend/default/shoe_store/template/customer/form/login.phtml ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Customer login form template
30
+ *
31
+ * @see Mage_Customer_Block_Form_Login
32
+ */
33
+ ?>
34
+ <div class="account-login">
35
+ <div class="page-title">
36
+ <h1><?php echo $this->__('Login or Create an Account') ?></h1>
37
+ </div>
38
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
39
+ <?php /* Extensions placeholder */ ?>
40
+ <?php echo $this->getChildHtml('customer.form.login.extra')?>
41
+ <form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="login-form">
42
+ <div class="col2-set">
43
+ <div class="col-1 new-users">
44
+ <div class="content">
45
+ <h2><?php echo $this->__('New Customers') ?></h2>
46
+ <p><?php echo $this->__('By creating an account with our store, you will be able to move through the checkout process faster, store multiple shipping addresses, view and track your orders in your account and more.') ?></p>
47
+ </div>
48
+ </div>
49
+ <div class="col-2 registered-users">
50
+ <div class="content">
51
+ <h2><?php echo $this->__('Registered Customers') ?></h2>
52
+ <p><?php echo $this->__('If you have an account with us, please log in.') ?></p>
53
+ <ul class="form-list">
54
+ <li>
55
+ <label for="email" class="required"><em>*</em><?php echo $this->__('Email Address') ?></label>
56
+ <div class="input-box">
57
+ <input type="text" name="login[username]" value="<?php echo $this->htmlEscape($this->getUsername()) ?>" id="email" class="input-text required-entry validate-email" title="<?php echo $this->__('Email Address') ?>" />
58
+ </div>
59
+ </li>
60
+ <li>
61
+ <label for="pass" class="required"><em>*</em><?php echo $this->__('Password') ?></label>
62
+ <div class="input-box">
63
+ <input type="password" name="login[password]" class="input-text required-entry validate-password" id="pass" title="<?php echo $this->__('Password') ?>" />
64
+ </div>
65
+ </li>
66
+ <?php echo $this->getChildHtml('form.additional.info'); ?>
67
+ </ul>
68
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
69
+ </div>
70
+ </div>
71
+ </div>
72
+ <div class="col2-set">
73
+ <div class="col-1 new-users">
74
+ <div class="buttons-set">
75
+ <button type="button" title="<?php echo $this->__('Create an Account') ?>" class="button" onclick="window.location='<?php echo $this->getCreateAccountUrl() ?>';"><span><span><?php echo $this->__('Create an Account') ?></span></span></button>
76
+ </div>
77
+ </div>
78
+ <div class="col-2 registered-users">
79
+ <div class="buttons-set">
80
+ <a href="<?php echo $this->getForgotPasswordUrl() ?>" class="f-left"><?php echo $this->__('Forgot Your Password?') ?></a>
81
+ <button type="submit" class="button" title="<?php echo $this->__('Login') ?>" name="send" id="send2"><span><span><?php echo $this->__('Login') ?></span></span></button>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ </form>
86
+ <script type="text/javascript">
87
+ //<![CDATA[
88
+ var dataForm = new VarienForm('login-form', true);
89
+ //]]>
90
+ </script>
91
+ </div>
app/design/frontend/default/shoe_store/template/customer/form/mini.login.phtml ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="block block-login">
28
+ <div class="block-title">
29
+ <strong><span><?php echo $this->__('Login') ?></span></strong>
30
+ </div>
31
+ <form action="<?php echo $this->getPostActionUrl() ?>" method="post">
32
+ <div class="block-content">
33
+ <label for="mini-login"><?php echo $this->__('Email:') ?></label><input type="text" name="login[username]" id="mini-login" class="input-text" />
34
+ <label for="mini-password"><?php echo $this->__('Password:') ?></label><input type="password" name="login[password]" id="mini-password" class="input-text" />
35
+ <div class="actions">
36
+ <button type="submit" class="button"><span><span><?php echo $this->__('Login') ?></span></span></button>
37
+ </div>
38
+ </div>
39
+ </form>
40
+ </div>
app/design/frontend/default/shoe_store/template/customer/form/newsletter.phtml ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="page-title">
28
+ <h1><?php echo $this->__('Newsletter Subscription') ?></h1>
29
+ </div>
30
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
31
+ <?php echo $this->getChildHtml('form_before')?>
32
+ <form action="<?php echo $this->getAction() ?>" method="post" id="form-validate">
33
+ <div class="fieldset">
34
+ <?php echo $this->getBlockHtml('formkey')?>
35
+ <h2 class="legend"><?php echo $this->__('Newsletter Subscription') ?></h2>
36
+ <ul class="form-list">
37
+ <li class="control"><input type="checkbox" name="is_subscribed" id="subscription" value="1" title="<?php echo $this->__('General Subscription') ?>"<?php if($this->getIsSubscribed()): ?> checked="checked"<?php endif; ?> class="checkbox" /><label for="subscription"><?php echo $this->__('General Subscription') ?></label></li>
38
+ <?php /* Extensions placeholder */ ?>
39
+ <?php echo $this->getChildHtml('customer.form.newsletter.extra')?>
40
+ </ul>
41
+ </div>
42
+ <div class="buttons-set">
43
+ <p class="back-link"><a href="<?php echo $this->escapeUrl($this->getBackUrl()) ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
44
+ <button type="submit" title="<?php echo $this->__('Save') ?>" class="button"><span><span><?php echo $this->__('Save') ?></span></span></button>
45
+ </div>
46
+ </form>
47
+ <?php /* Extensions placeholder */ ?>
48
+ <?php echo $this->getChildHtml('customer.form.newsletter.extra2')?>
49
+ <script type="text/javascript">
50
+ //<![CDATA[
51
+ var dataForm = new VarienForm('form-validate', true);
52
+ //]]>
53
+ </script>
app/design/frontend/default/shoe_store/template/customer/form/register.phtml ADDED
@@ -0,0 +1,190 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Create account form template
30
+ *
31
+ * @var $this Mage_Customer_Block_Form_Register
32
+ */
33
+ ?>
34
+ <div class="account-create">
35
+ <div class="page-title">
36
+ <h1><?php echo $this->__('Create an Account') ?></h1>
37
+ </div>
38
+ <?php echo $this->getChildHtml('form_fields_before')?>
39
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
40
+ <?php /* Extensions placeholder */ ?>
41
+ <?php echo $this->getChildHtml('customer.form.register.extra')?>
42
+ <form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="form-validate">
43
+ <div class="fieldset">
44
+ <input type="hidden" name="success_url" value="<?php echo $this->getSuccessUrl() ?>" />
45
+ <input type="hidden" name="error_url" value="<?php echo $this->getErrorUrl() ?>" />
46
+ <h2 class="legend"><?php echo $this->__('Personal Information') ?></h2>
47
+ <ul class="form-list">
48
+ <li class="fields">
49
+ <?php echo $this->getLayout()->createBlock('customer/widget_name')->setObject($this->getFormData())->setForceUseCustomerAttributes(true)->toHtml() ?>
50
+ </li>
51
+ <li>
52
+ <label for="email_address" class="required"><em>*</em><?php echo $this->__('Email Address') ?></label>
53
+ <div class="input-box">
54
+ <input type="text" name="email" id="email_address" value="<?php echo $this->escapeHtml($this->getFormData()->getEmail()) ?>" title="<?php echo $this->__('Email Address') ?>" class="input-text validate-email required-entry" />
55
+ </div>
56
+ </li>
57
+ <?php if ($this->isNewsletterEnabled()): ?>
58
+ <li class="control">
59
+ <div class="input-box">
60
+ <input type="checkbox" name="is_subscribed" title="<?php echo $this->__('Sign Up for Newsletter') ?>" value="1" id="is_subscribed"<?php if($this->getFormData()->getIsSubscribed()): ?> checked="checked"<?php endif; ?> class="checkbox" />
61
+ </div>
62
+ <label for="is_subscribed"><?php echo $this->__('Sign Up for Newsletter') ?></label>
63
+ <?php /* Extensions placeholder */ ?>
64
+ <?php echo $this->getChildHtml('customer.form.register.newsletter')?>
65
+ </li>
66
+ <?php endif ?>
67
+ <?php $_dob = $this->getLayout()->createBlock('customer/widget_dob') ?>
68
+ <?php if ($_dob->isEnabled()): ?>
69
+ <li><?php echo $_dob->setDate($this->getFormData()->getDob())->toHtml() ?></li>
70
+ <?php endif ?>
71
+ <?php $_taxvat = $this->getLayout()->createBlock('customer/widget_taxvat') ?>
72
+ <?php if ($_taxvat->isEnabled()): ?>
73
+ <li><?php echo $_taxvat->setTaxvat($this->getFormData()->getTaxvat())->toHtml() ?></li>
74
+ <?php endif ?>
75
+ <?php $_gender = $this->getLayout()->createBlock('customer/widget_gender') ?>
76
+ <?php if ($_gender->isEnabled()): ?>
77
+ <li><?php echo $_gender->setGender($this->getFormData()->getGender())->toHtml() ?></li>
78
+ <?php endif ?>
79
+ </ul>
80
+ </div>
81
+ <?php if($this->getShowAddressFields()): ?>
82
+ <div class="fieldset">
83
+ <input type="hidden" name="create_address" value="1" />
84
+ <h2 class="legend"><?php echo $this->__('Address Information') ?></h2>
85
+ <ul class="form-list">
86
+ <li class="fields">
87
+ <div class="field">
88
+ <label for="company"><?php echo $this->__('Company') ?></label>
89
+ <div class="input-box">
90
+ <input type="text" name="company" id="company" value="<?php echo $this->escapeHtml($this->getFormData()->getCompany()) ?>" title="<?php echo $this->__('Company') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('company') ?>" />
91
+ </div>
92
+ </div>
93
+ <div class="field">
94
+ <label for="telephone" class="required"><em>*</em><?php echo $this->__('Telephone') ?></label>
95
+ <div class="input-box">
96
+ <input type="text" name="telephone" id="telephone" value="<?php echo $this->escapeHtml($this->getFormData()->getTelephone()) ?>" title="<?php echo $this->__('Telephone') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('telephone') ?>" />
97
+ </div>
98
+ </div>
99
+ </li>
100
+ <?php $_streetValidationClass = $this->helper('customer/address')->getAttributeValidationClass('street'); ?>
101
+ <li class="wide">
102
+ <label for="street_1" class="required"><em>*</em><?php echo $this->__('Street Address') ?></label>
103
+ <div class="input-box">
104
+ <input type="text" name="street[]" value="<?php echo $this->escapeHtml($this->getFormData()->getStreet(1)) ?>" title="<?php echo $this->__('Street Address') ?>" id="street_1" class="input-text <?php echo $_streetValidationClass ?>" />
105
+ </div>
106
+ </li>
107
+ <?php $_streetValidationClass = trim(str_replace('required-entry', '', $_streetValidationClass)); ?>
108
+ <?php for ($_i = 2, $_n = $this->helper('customer/address')->getStreetLines(); $_i <= $_n; $_i++): ?>
109
+ <li class="wide">
110
+ <div class="input-box">
111
+ <input type="text" name="street[]" value="<?php echo $this->escapeHtml($this->getFormData()->getStreet($_i)) ?>" title="<?php echo $this->__('Street Address %s', $_i) ?>" id="street_<?php echo $_i ?>" class="input-text <?php echo $_streetValidationClass ?>" />
112
+ </div>
113
+ </li>
114
+ <?php endfor; ?>
115
+ <li class="fields">
116
+ <div class="field">
117
+ <label for="city" class="required"><em>*</em><?php echo $this->__('City') ?></label>
118
+ <div class="input-box">
119
+ <input type="text" name="city" value="<?php echo $this->escapeHtml($this->getFormData()->getCity()) ?>" title="<?php echo $this->__('City') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('city') ?>" id="city" />
120
+ </div>
121
+ </div>
122
+ <div class="field">
123
+ <label for="region_id" class="required"><em>*</em><?php echo $this->__('State/Province') ?></label>
124
+ <div class="input-box">
125
+ <select id="region_id" name="region_id" title="<?php echo $this->__('State/Province') ?>" class="validate-select" style="display:none;">
126
+ <option value=""><?php echo $this->__('Please select region, state or province') ?></option>
127
+ </select>
128
+ <script type="text/javascript">
129
+ //<![CDATA[
130
+ $('region_id').setAttribute('defaultValue', "<?php echo $this->getFormData()->getRegionId() ?>");
131
+ //]]>
132
+ </script>
133
+ <input type="text" id="region" name="region" value="<?php echo $this->escapeHtml($this->getRegion()) ?>" title="<?php echo $this->__('State/Province') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('region') ?>" style="display:none;" />
134
+ </div>
135
+ </div>
136
+ </li>
137
+ <li class="fields">
138
+ <div class="field">
139
+ <label for="zip" class="required"><em>*</em><?php echo $this->__('Zip/Postal Code') ?></label>
140
+ <div class="input-box">
141
+ <input type="text" name="postcode" value="<?php echo $this->escapeHtml($this->getFormData()->getPostcode()) ?>" title="<?php echo $this->__('Zip/Postal Code') ?>" id="zip" class="input-text validate-zip-international <?php echo $this->helper('customer/address')->getAttributeValidationClass('postcode') ?>" />
142
+ </div>
143
+ </div>
144
+ <div class="field">
145
+ <label for="country" class="required"><em>*</em><?php echo $this->__('Country') ?></label>
146
+ <div class="input-box">
147
+ <?php echo $this->getCountryHtmlSelect() ?>
148
+ </div>
149
+ </div>
150
+ </li>
151
+ </ul>
152
+ <input type="hidden" name="default_billing" value="1" />
153
+ <input type="hidden" name="default_shipping" value="1" />
154
+ </div>
155
+ <?php endif; ?>
156
+ <div class="fieldset">
157
+ <h2 class="legend"><?php echo $this->__('Login Information') ?></h2>
158
+ <ul class="form-list">
159
+ <li class="fields">
160
+ <div class="field">
161
+ <label for="password" class="required"><em>*</em><?php echo $this->__('Password') ?></label>
162
+ <div class="input-box">
163
+ <input type="password" name="password" id="password" title="<?php echo $this->__('Password') ?>" class="input-text required-entry validate-password" />
164
+ </div>
165
+ </div>
166
+ <div class="field">
167
+ <label for="confirmation" class="required"><em>*</em><?php echo $this->__('Confirm Password') ?></label>
168
+ <div class="input-box">
169
+ <input type="password" name="confirmation" title="<?php echo $this->__('Confirm Password') ?>" id="confirmation" class="input-text required-entry validate-cpassword" />
170
+ </div>
171
+ </div>
172
+ </li>
173
+ <?php echo $this->getChildHtml('form.additional.info'); ?>
174
+ </ul>
175
+ </div>
176
+ <div class="buttons-set">
177
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
178
+ <p class="back-link"><a href="<?php echo $this->escapeUrl($this->getBackUrl()) ?>" class="back-link"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
179
+ <button type="submit" title="<?php echo $this->__('Submit') ?>" class="button"><span><span><?php echo $this->__('Submit') ?></span></span></button>
180
+ </div>
181
+ </form>
182
+ <script type="text/javascript">
183
+ //<![CDATA[
184
+ var dataForm = new VarienForm('form-validate', true);
185
+ <?php if($this->getShowAddressFields()): ?>
186
+ new RegionUpdater('country', 'region', 'region_id', <?php echo $this->helper('directory')->getRegionJson() ?>, undefined, 'zip');
187
+ <?php endif; ?>
188
+ //]]>
189
+ </script>
190
+ </div>
app/design/frontend/default/shoe_store/template/customer/form/resetforgottenpassword.phtml ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="page-title">
28
+ <h1><?php echo $this->__('Reset a Password'); ?></h1>
29
+ </div>
30
+ <?php echo $this->getMessagesBlock()->getGroupedHtml(); ?>
31
+ <form action="<?php echo $this->getUrl('*/*/resetpasswordpost', array('_query' => array('id' => $this->getCustomerId(), 'token' => $this->getResetPasswordLinkToken()))); ?>" method="post" id="form-validate">
32
+ <div class="fieldset" style="margin-top: 70px;">
33
+ <ul class="form-list">
34
+ <li class="fields">
35
+ <div class="field">
36
+ <label for="password" class="required"><em>*</em><?php echo $this->__('New Password'); ?></label>
37
+ <div class="input-box">
38
+ <input type="password" class="input-text required-entry validate-password" name="password" id="password" />
39
+ </div>
40
+ </div>
41
+ <div class="field">
42
+ <label for="confirmation" class="required"><em>*</em><?php echo $this->__('Confirm New Password'); ?></label>
43
+ <div class="input-box">
44
+ <input type="password" class="input-text required-entry validate-cpassword" name="confirmation" id="confirmation" />
45
+ </div>
46
+ </div>
47
+ </li>
48
+ </ul>
49
+ </div>
50
+ <div class="buttons-set">
51
+ <p class="required"><?php echo $this->__('* Required Fields'); ?></p>
52
+ <button type="submit" title="<?php echo $this->__('Reset a Password'); ?>" class="button"><span><span><?php echo $this->__('Reset a Password'); ?></span></span></button>
53
+ </div>
54
+ </form>
55
+ <script type="text/javascript">
56
+ /*<![CDATA[*/
57
+ var dataForm = new VarienForm('form-validate', true);
58
+ /*]]>*/
59
+ </script>
app/design/frontend/default/shoe_store/template/customer/logout.phtml ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="page-title">
28
+ <h1><?php echo Mage::helper('customer')->__('You are now logged out') ?></h1>
29
+ </div>
30
+ <p><?php echo Mage::helper('customer')->__('You have logged out and will be redirected to our homepage in 5 seconds.') ?></p>
31
+ <script type="text/javascript">
32
+ //<![CDATA[
33
+ setTimeout(function(){ location.href = '<?php echo $this->getUrl() ?>'},5000);
34
+ //]]>
35
+ </script>
app/design/frontend/default/shoe_store/template/customer/orders.phtml ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /**
28
+ * @deprecated after 1.4.0.0-alpha3
29
+ */
30
+ ?>
31
+ <div class="page-title">
32
+ <h1><?php echo $this->__('My Orders') ?></h1>
33
+ </div>
34
+ <?php if($orders->getSize()): ?>
35
+ <div class="responsive_table">
36
+ <table class="data-table" id="my-orders-table" >
37
+ <thead>
38
+ <tr>
39
+ <th><?php echo $this->__('Order #') ?></th>
40
+ <th><?php echo $this->__('Date') ?></th>
41
+ <!--<th class="a-center">Shipped To</th>-->
42
+ <th><?php echo $this->__('Total') ?></th>
43
+ <th><?php echo $this->__('Status') ?></th>
44
+ <th><?php echo $this->__('Details') ?></th>
45
+ </tr>
46
+ </thead>
47
+ <tbody>
48
+ <?php foreach ($orders as $order): ?>
49
+ <tr>
50
+ <td><?php echo $order->getRealOrderId() ?>&nbsp;</td>
51
+ <td><?php echo date("D, j M, Y", strtotime($order->getCreatedAt())) ?>&nbsp;</td>
52
+ <!--<td class="a-center">{$page.orders[io].customer}</td>-->
53
+ <td><?php echo $order->getGrandTotal() ?>&nbsp;</td>
54
+ <td><?php echo $order->getStatus() ?>&nbsp;</td>
55
+ <td><a href="<?php echo $this->getUrl('customer/order/view', array('order'=>$order->getOrderId())) ?>"><?php echo $this->__('View Order') ?></a>&nbsp;</td>
56
+ </tr>
57
+ <?php endforeach ?>
58
+ </tbody>
59
+ </table>
60
+ </div>
61
+ <script type="text/javascript">decorateTable('my-orders-table')</script>
62
+ <?php else: ?>
63
+ <p><?php echo $this->__('You have placed no orders yet.') ?></p>
64
+ <?php endif ?>
65
+ <div class="buttons-set">
66
+ <p class="back-link"><a href="<?php echo $this->getUrl('customer/account') ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
67
+ </div>
app/design/frontend/default/shoe_store/template/customer/orders.phtml~ ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /**
28
+ * @deprecated after 1.4.0.0-alpha3
29
+ */
30
+ ?>
31
+ <div class="page-title">
32
+ <h1><?php echo $this->__('My Orders') ?></h1>
33
+ </div>
34
+ <?php if($orders->getSize()): ?>
35
+ <table class="data-table" id="my-orders-table" >
36
+ <thead>
37
+ <tr>
38
+ <th><?php echo $this->__('Order #') ?></th>
39
+ <th><?php echo $this->__('Date') ?></th>
40
+ <!--<th class="a-center">Shipped To</th>-->
41
+ <th><?php echo $this->__('Total') ?></th>
42
+ <th><?php echo $this->__('Status') ?></th>
43
+ <th><?php echo $this->__('Details') ?></th>
44
+ </tr>
45
+ </thead>
46
+ <tbody>
47
+ <?php foreach ($orders as $order): ?>
48
+ <tr>
49
+ <td><?php echo $order->getRealOrderId() ?>&nbsp;</td>
50
+ <td><?php echo date("D, j M, Y", strtotime($order->getCreatedAt())) ?>&nbsp;</td>
51
+ <!--<td class="a-center">{$page.orders[io].customer}</td>-->
52
+ <td><?php echo $order->getGrandTotal() ?>&nbsp;</td>
53
+ <td><?php echo $order->getStatus() ?>&nbsp;</td>
54
+ <td><a href="<?php echo $this->getUrl('customer/order/view', array('order'=>$order->getOrderId())) ?>"><?php echo $this->__('View Order') ?></a>&nbsp;</td>
55
+ </tr>
56
+ <?php endforeach ?>
57
+ </tbody>
58
+ </table>
59
+ <script type="text/javascript">decorateTable('my-orders-table')</script>
60
+ <?php else: ?>
61
+ <p><?php echo $this->__('You have placed no orders yet.') ?></p>
62
+ <?php endif ?>
63
+ <div class="buttons-set">
64
+ <p class="back-link"><a href="<?php echo $this->getUrl('customer/account') ?>"><small>&laquo; </small><?php echo $this->__('Back') ?></a></p>
65
+ </div>
app/design/frontend/default/shoe_store/template/customer/wishlist.phtml ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /**
28
+ * @deprecated after 1.4.0.0-alpha3
29
+ */
30
+ ?>
31
+ <div class="page-title">
32
+ <h1><?php echo $this->__('Wishlist') ?></h1>
33
+ </div>
34
+ <?php if($wishlist->getSize()): ?>
35
+ <form action="<?php echo $this->getUrl('customer/wishlist/updatePost') ?>" method="post">
36
+ <table class="data-table">
37
+ <col />
38
+ <col width="60" />
39
+ <col width="60" />
40
+ <col width="60" />
41
+ <thead>
42
+ <tr>
43
+ <th><?php echo $this->__('Product') ?></th>
44
+ <th><?php echo $this->__('Status') ?></th>
45
+ <th><?php echo $this->__('To Cart') ?></th>
46
+ <th><?php echo $this->__('Remove') ?></th>
47
+ </tr>
48
+ </thead>
49
+ <tbody>
50
+ <?php foreach($wishlist as $item): ?>
51
+ <tr>
52
+ <td>
53
+ <input type="hidden" value="1" name="wishlist[<?php echo $item->getItemId() ?>]" />
54
+ <a href="<?php echo $this->getUrl('catalog/product/view/id/'.$item->getProduct()->getId()) ?>"><?php echo $this->htmlEscape($item->getProduct()->getName()) ?></a>
55
+ </td>
56
+ <td><?php echo $item->getStatus() ?></td>
57
+ <td><input type="checkbox" value="1" name="to_cart[<?php echo $item->getItemId() ?>]" class="checkbox" /></td>
58
+ <td><input type="checkbox" value="1" name="remove[<?php echo $item->getItemId() ?>]" class="checkbox" /></td>
59
+ </tr>
60
+ <?php endforeach ?>
61
+ </tbody>
62
+ </table>
63
+ <div class="buttons-set">
64
+ <a href="<?php echo Mage::getBaseUrl() ?>">&laquo; <?php echo $this->__('Continue Shopping') ?></a>
65
+ <input type="submit" value="<?php echo $this->__('Update') ?>" class="input-button" name="do" />
66
+ </div>
67
+ </form>
68
+ <?php else: ?>
69
+ <p><?php echo $this->__('You have placed no products yet.') ?></p>
70
+ <div class="buttons-set">
71
+ <p class="back-link"><a href="<?php echo $this->getUrl('customer/account') ?>"><small>&laquo; </small><?php echo $this->__('Back - link to the previously viewed page') ?></a></p>
72
+ </div>
73
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/custommenu/top.phtml ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php $_categories = $this->getStoreCategories() ?>
2
+ <?php if(count($_categories)): ?>
3
+ <div class="nav-container">
4
+ <div id="custommenu">
5
+ <?php foreach ($_categories as $_category): ?>
6
+ <?php echo $this->drawCustomMenuItem($_category) ?>
7
+ <?php endforeach ?>
8
+ <div class="clearBoth"></div>
9
+ </div>
10
+ </div>
11
+ <script type="text/javascript">
12
+ //<![CDATA[
13
+ var CUSTOMMENU_POPUP_WIDTH = <?php echo (int)Mage::getStoreConfig('custom_menu/popup/width')?>;
14
+ var CUSTOMMENU_POPUP_TOP_OFFSET = <?php echo (int)Mage::getStoreConfig('custom_menu/popup/top_offset')?>;
15
+ var CUSTOMMENU_POPUP_RIGHT_OFFSET_MIN = <?php echo (int)Mage::getStoreConfig('custom_menu/popup/right_offset_min')?>;
16
+ //]]>
17
+ </script>
18
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/easytabs/additional.phtml ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2009 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php foreach ($this->getChildHtmlList() as $_html): ?>
28
+ <?php echo $_html ?>
29
+ <?php endforeach; ?>
app/design/frontend/default/shoe_store/template/easytabs/attributes.phtml ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2009 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /**
28
+ * Product additional attributes template
29
+ *
30
+ * @see Mage_Catalog_Block_Product_View_Attributes
31
+ */
32
+ ?>
33
+ <?php
34
+ $_helper = $this->helper('catalog/output');
35
+ $_product = $this->getProduct()
36
+ ?>
37
+ <?php if($_additional = $this->getAdditionalData()): ?>
38
+ <div class="box-collateral box-additional">
39
+ <table class="data-table" id="product-attribute-specs-table">
40
+ <col width="25%" />
41
+ <col />
42
+ <tbody>
43
+ <?php foreach ($_additional as $_data): ?>
44
+ <tr>
45
+ <th class="label"><?php echo $this->htmlEscape($this->__($_data['label'])) ?></th>
46
+ <td class="data"><?php echo $_helper->productAttribute($_product, $_data['value'], $_data['code']) ?></td>
47
+ </tr>
48
+ <?php endforeach; ?>
49
+ </tbody>
50
+ </table>
51
+ <script type="text/javascript">decorateTable('product-attribute-specs-table')</script>
52
+ </div>
53
+ <?php endif;?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms.phtml ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+ $cmsblockid = Mage::getStoreConfig('easy_tabs/customcms/tabidcms');
3
+ if(!empty($cmsblockid)){
4
+ echo '<div class="product-specs">'.$this->getLayout()->createBlock('cms/block')->setBlockId($cmsblockid)->toHtml().'</div>';
5
+ }
6
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms1.phtml ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+ $cmsblockid = Mage::getStoreConfig('easy_tabs/customcms/tabidcms1');
3
+ if(!empty($cmsblockid)){
4
+ echo '<div class="product-specs">'.$this->getLayout()->createBlock('cms/block')->setBlockId($cmsblockid)->toHtml().'</div>';
5
+ }
6
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms2.phtml ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+ $cmsblockid = Mage::getStoreConfig('easy_tabs/customcms/tabidcms2');
3
+ if(!empty($cmsblockid)){
4
+ echo '<div class="product-specs">'.$this->getLayout()->createBlock('cms/block')->setBlockId($cmsblockid)->toHtml().'</div>';
5
+ }
6
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms3.phtml ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+ $cmsblockid = Mage::getStoreConfig('easy_tabs/customcms/tabidcms3');
3
+ if(!empty($cmsblockid)){
4
+ echo '<div class="product-specs">'.$this->getLayout()->createBlock('cms/block')->setBlockId($cmsblockid)->toHtml().'</div>';
5
+ }
6
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcms4.phtml ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+ $cmsblockid = Mage::getStoreConfig('easy_tabs/customcms/tabidcms4');
3
+ if(!empty($cmsblockid)){
4
+ echo '<div class="product-specs">'.$this->getLayout()->createBlock('cms/block')->setBlockId($cmsblockid)->toHtml().'</div>';
5
+ }
6
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom.phtml ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_helper = $this->helper('catalog/output');
3
+ $attrCode = Mage::getStoreConfig('easy_tabs/custom/customtabid');
4
+ if($attrCode){
5
+ $product = $this->getProduct();
6
+ $attribute = $product->getResource()->getAttribute($attrCode);
7
+ if ($attribute) {
8
+ $content = $attribute->getFrontend()->getValue($product);
9
+ if(!empty($content)){
10
+ echo '<div class="product-specs">'
11
+ . $_helper->productAttribute($this->getProduct(), $content, $attrCode)
12
+ . '</div>';
13
+ }
14
+ }
15
+ }
16
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom1.phtml ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_helper = $this->helper('catalog/output');
3
+ $attrCode = Mage::getStoreConfig('easy_tabs/custom/customtabid1');
4
+ if($attrCode){
5
+ $product = $this->getProduct();
6
+ $attribute = $product->getResource()->getAttribute($attrCode);
7
+ if ($attribute) {
8
+ $content = $attribute->getFrontend()->getValue($product);
9
+ if(!empty($content)){
10
+ echo '<div class="product-specs">'
11
+ . $_helper->productAttribute($this->getProduct(), $content, $attrCode)
12
+ . '</div>';
13
+ }
14
+ }
15
+ }
16
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom2.phtml ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_helper = $this->helper('catalog/output');
3
+ $attrCode = Mage::getStoreConfig('easy_tabs/custom/customtabid2');
4
+ if($attrCode){
5
+ $product = $this->getProduct();
6
+ $attribute = $product->getResource()->getAttribute($attrCode);
7
+ if ($attribute) {
8
+ $content = $attribute->getFrontend()->getValue($product);
9
+ if(!empty($content)){
10
+ echo '<div class="product-specs">'
11
+ . $_helper->productAttribute($this->getProduct(), $content, $attrCode)
12
+ . '</div>';
13
+ }
14
+ }
15
+ }
16
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom3.phtml ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_helper = $this->helper('catalog/output');
3
+ $attrCode = Mage::getStoreConfig('easy_tabs/custom/customtabid3');
4
+ if($attrCode){
5
+ $product = $this->getProduct();
6
+ $attribute = $product->getResource()->getAttribute($attrCode);
7
+ if ($attribute) {
8
+ $content = $attribute->getFrontend()->getValue($product);
9
+ if(!empty($content)){
10
+ echo '<div class="product-specs">'
11
+ . $_helper->productAttribute($this->getProduct(), $content, $attrCode)
12
+ . '</div>';
13
+ }
14
+ }
15
+ }
16
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustom4.phtml ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_helper = $this->helper('catalog/output');
3
+ $attrCode = Mage::getStoreConfig('easy_tabs/custom/customtabid4');
4
+ if($attrCode){
5
+ $product = $this->getProduct();
6
+ $attribute = $product->getResource()->getAttribute($attrCode);
7
+ if ($attribute) {
8
+ $content = $attribute->getFrontend()->getValue($product);
9
+ if(!empty($content)){
10
+ echo '<div class="product-specs">'
11
+ . $_helper->productAttribute($this->getProduct(), $content, $attrCode)
12
+ . '</div>';
13
+ }
14
+ }
15
+ }
16
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductcustomcms.phtml ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ <?php
2
+ if($cmsblockid = Mage::getStoreConfig('easy_tabs/custom/customtabidcms')){
3
+ echo '<div class="product-specs">'.$this->getLayout()->createBlock('cms/block')->setBlockId('$cmsblockid')->toHtml().'</div>';
4
+ }
5
+ ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductrelated.phtml ADDED
@@ -0,0 +1,90 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design_default
22
+ * @package Mage
23
+ * @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php if($this->getItems()->getSize()): ?>
28
+ <p><strong><?php echo $this->__('Check items to add to the cart or') ?>&nbsp;<a href="#" onclick="selectAllRelated(this);return false;"><?php echo $this->__('select all') ?></a></strong></p>
29
+ <ol>
30
+ <?php foreach($this->getItems() as $_item): ?>
31
+ <li<?php if($_item->isComposite() || !$_item->isSaleable()): ?> class="super-products"<?php endif; ?>>
32
+ <div class="product-images">
33
+ <?php if(!$_item->isComposite() && $_item->isSaleable()): ?>
34
+ <span class="checkbox-container">
35
+ <?php if (!$_item->getRequiredOptions()): ?>
36
+ <input type="checkbox" class="related-checkbox left" id="related-checkbox<?php echo $_item->getId() ?>" name="related_products[]" value="<?php echo $_item->getId() ?>" />
37
+ <?php endif; ?>
38
+ </span>
39
+ <?php else: ?>
40
+ <span class="checkbox-container">&nbsp;</span>
41
+ <?php endif; ?>
42
+ <a href="<?php echo $_item->getProductUrl() ?>"><img src="<?php echo $this->helper('catalog/image')->init($_item, 'thumbnail')->resize(50) ?>" alt="<?php echo $this->htmlEscape($_item->getName()) ?>" width="50" height="50" /></a>
43
+ </div>
44
+ <div class="product-details">
45
+ <a href="<?php echo $_item->getProductUrl() ?>"><?php echo $this->htmlEscape($_item->getName()) ?></a>
46
+ <?php echo $this->getPriceHtml($_item, true) ?>
47
+ <?php if ($this->helper('wishlist')->isAllow()) : ?>
48
+ <a href="<?php echo $this->getAddToWishlistUrl($_item) ?>" class="link-cart"><?php echo $this->__('Add to Wishlist') ?></a>
49
+ <?php endif; ?>
50
+ </div>
51
+ </li>
52
+ <?php endforeach ?>
53
+ </ol>
54
+ <script type="text/javascript">
55
+ <!--
56
+ $$('.related-checkbox').each(function(elem){
57
+ Event.observe(elem, 'click', addRelatedToProduct)
58
+ });
59
+
60
+ var relatedProductsCheckFlag = false;
61
+ function selectAllRelated(txt){
62
+ if (relatedProductsCheckFlag == false) {
63
+ $$('.related-checkbox').each(function(elem){
64
+ elem.checked = true;
65
+ });
66
+ relatedProductsCheckFlag = true;
67
+ txt.innerHTML="<?php echo $this->__('unselect all') ?>";
68
+ } else {
69
+ $$('.related-checkbox').each(function(elem){
70
+ elem.checked = false;
71
+ });
72
+ relatedProductsCheckFlag = false;
73
+ txt.innerHTML="<?php echo $this->__('select all') ?>";
74
+ }
75
+ addRelatedToProduct();
76
+ }
77
+
78
+ function addRelatedToProduct(){
79
+ var checkboxes = $$('.related-checkbox');
80
+ var values = [];
81
+ for(var i=0;i<checkboxes.length;i++){
82
+ if(checkboxes[i].checked) values.push(checkboxes[i].value);
83
+ }
84
+ if($('related-products-field')){
85
+ $('related-products-field').value = values.join(',');
86
+ }
87
+ }
88
+ //-->
89
+ </script>
90
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductreview.phtml ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design_default
22
+ * @package Mage
23
+ * @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+
28
+ <?php $_items = $this->getReviewsCollection()->getItems();?>
29
+ <?php if (count($_items)):?>
30
+ <div class="collateral-box dedicated-review-box" id="customer-reviews">
31
+
32
+ <?php echo $this->getChildHtml('toolbar') ?>
33
+
34
+ <ol style="margin-top:15px;">
35
+ <?php foreach ($_items as $_review):?>
36
+ <li>
37
+ <strong><?php echo $this->htmlEscape($_review->getTitle()) ?></strong> <?php echo $this->__('Review by %s', $this->htmlEscape($_review->getNickname())) ?>
38
+ <table class="ratings-list" cellspacing="0">
39
+ <tbody>
40
+ <?php foreach ($_review->getRatingVotes() as $_vote): ?>
41
+ <tr>
42
+ <td class="label"><strong><?php echo $_vote->getRatingCode() ?></strong></td>
43
+ <td>
44
+ <div class="rating-box">
45
+ <div class="rating" style="width: <?php echo $_vote->getPercent() ?>%;"></div>
46
+ </div>
47
+ </td>
48
+ </tr>
49
+ <?php endforeach; ?>
50
+ </tbody>
51
+ </table>
52
+ <p><?php echo nl2br($this->htmlEscape($_review->getDetail())) ?> <?php echo $this->__('(Posted on %s)', $this->formatDate($_review->getCreatedAt()), 'long') ?></p>
53
+ </li>
54
+ <?php endforeach; ?>
55
+ </ol>
56
+
57
+ <?php echo $this->getChildHtml('toolbar') ?>
58
+ </div>
59
+ <?php endif;?>
60
+
61
+ <br/>
62
+
63
+ <?php echo $this->getLayout()->createBlock('review/form')->setBlockId('product.review.form')->toHtml() ?>
64
+
65
+ <?php echo $this->getChildHtml('review_form') ?>
app/design/frontend/default/shoe_store/template/easytabs/catalogproducttags.phtml ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2009 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="box-collateral box-tags">
28
+ <?php echo $this->getChildHtml('list_before')?>
29
+ <?php if( $this->getCount() ): ?>
30
+ <h3><?php echo $this->__('Other people marked this product with these tags:') ?></h3>
31
+ <ul class="product-tags">
32
+ <?php $_iterator = 0; ?>
33
+ <?php foreach( $this->getTags() as $_tag ): ?>
34
+ <li<?php if( 1 == ++$_iterator && $this->getCount() != 1 ): ?> class="first"<?php elseif($_iterator == $this->getCount()): ?> class="last"<?php endif; ?>><a href="<?php echo $_tag->getTaggedProductsUrl() ?>"><?php echo $this->htmlEscape($_tag->getName()) ?></a> (<?php echo $_tag->getPopularity() ?>)</li>
35
+ <?php endforeach; ?>
36
+ </ul>
37
+ <?php endif; ?>
38
+ <form id="addTagForm" action="<?php echo $this->getFormAction(); ?>" method="get">
39
+ <div class="form-add">
40
+ <label for="productTagName"><?php echo $this->__('Add Your Tags:') ?></label>
41
+ <div class="input-box">
42
+ <input type="text" class="input-text required-entry" name="productTagName" id="productTagName" />
43
+ </div>
44
+ <button type="button" title="<?php echo $this->__('Add Tags') ?>" class="button" onclick="submitTagForm()"><span><span><?php echo $this->__('Add Tags') ?></span></span></button>
45
+ </div>
46
+ </form>
47
+ <p class="note"><?php echo $this->__("Use spaces to separate tags. Use single quotes (') for phrases.") ?></p>
48
+ <script type="text/javascript">
49
+ //<![CDATA[
50
+ var addTagFormJs = new VarienForm('addTagForm');
51
+ function submitTagForm(){
52
+ if(addTagFormJs.validator.validate()) {
53
+ addTagFormJs.form.submit();
54
+ }
55
+ }
56
+ //]]>
57
+ </script>
58
+ </div>
app/design/frontend/default/shoe_store/template/easytabs/catalogproductview.phtml ADDED
@@ -0,0 +1,119 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2009 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /**
28
+ * Product view template
29
+ *
30
+ * @see Mage_Catalog_Block_Product_View
31
+ * @see Mage_Review_Block_Product_View
32
+ */
33
+ ?>
34
+ <?php
35
+ $_helper = $this->helper('catalog/output');
36
+ $_product = $this->getProduct();
37
+ ?>
38
+ <script type="text/javascript">
39
+ var optionsPrice = new Product.OptionsPrice(<?php echo $this->getJsonConfig() ?>);
40
+ </script>
41
+ <div id="messages_product_view"><?php echo $this->getMessagesBlock()->getGroupedHtml() ?></div>
42
+ <div class="product-view">
43
+ <div class="product-essential">
44
+ <form action="<?php echo $this->getAddToCartUrl($_product) ?>" method="post" id="product_addtocart_form"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>>
45
+ <div class="no-display">
46
+ <input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
47
+ <input type="hidden" name="related_product" id="related-products-field" value="" />
48
+ </div>
49
+
50
+ <div class="product-shop">
51
+ <div class="product-name">
52
+ <h1><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></h1>
53
+ </div>
54
+
55
+ <?php if ($this->canEmailToFriend()): ?>
56
+ <p class="email-friend"><a href="<?php echo $this->helper('catalog/product')->getEmailToFriendUrl($_product) ?>"><?php echo $this->__('Email to a Friend') ?></a></p>
57
+ <?php endif; ?>
58
+
59
+ <?php echo $this->getReviewsSummaryHtml($_product, false, true)?>
60
+ <?php echo $this->getChildHtml('alert_urls') ?>
61
+ <?php echo $this->getChildHtml('product_type_data') ?>
62
+ <?php echo $this->getTierPriceHtml() ?>
63
+
64
+ <?php if (!$this->hasOptions()):?>
65
+ <div class="add-to-box">
66
+ <?php if($_product->isSaleable()): ?>
67
+ <?php echo $this->getChildHtml('addtocart') ?>
68
+ <?php endif; ?>
69
+ <?php echo $this->getChildHtml('addto') ?>
70
+ </div>
71
+ <?php else:?>
72
+ <?php echo $this->getChildHtml('addto') ?>
73
+ <?php endif; ?>
74
+
75
+ <?php if ($_product->getShortDescription()):?>
76
+ <div class="short-description">
77
+ <h2><?php echo $this->__('Quick Overview') ?></h2>
78
+ <div class="std"><?php echo $_helper->productAttribute($_product, nl2br($_product->getShortDescription()), 'short_description') ?></div>
79
+ </div>
80
+ <?php endif;?>
81
+
82
+ <?php echo $this->getChildHtml('other');?>
83
+
84
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
85
+ <?php echo $this->getChildChildHtml('container1', '', true, true) ?>
86
+ <?php endif;?>
87
+
88
+ </div>
89
+
90
+ <div class="product-img-box">
91
+ <?php echo $this->getChildHtml('media') ?>
92
+ </div>
93
+
94
+ <div class="clearer"></div>
95
+ <?php if ($_product->isSaleable() && $this->hasOptions()):?>
96
+ <?php echo $this->getChildChildHtml('container2', '', true, true) ?>
97
+ <?php endif;?>
98
+ </form>
99
+ <script type="text/javascript">
100
+ //<![CDATA[
101
+ var productAddToCartForm = new VarienForm('product_addtocart_form');
102
+ productAddToCartForm.submit = function(){
103
+ if (this.validator.validate()) {
104
+ this.form.submit();
105
+ }
106
+ }.bind(productAddToCartForm);
107
+ //]]>
108
+ </script>
109
+ </div>
110
+
111
+ <div class="product-collateral">
112
+ <?php if (!Mage::getStoreConfig('easy_tabs/general/descriptiontabbed')):?>
113
+ <?php echo $this->getChildHtml('description') ?>
114
+ <?php endif;?>
115
+ <?php echo $this->getChildHtml('additional') ?>
116
+ <?php echo $this->getChildHtml('upsell_products') ?>
117
+ <?php echo $this->getChildHtml('product_additional_data') ?>
118
+ </div>
119
+ </div>
app/design/frontend/default/shoe_store/template/easytabs/description.phtml ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2009 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /**
28
+ * Product description template
29
+ *
30
+ * @see Mage_Catalog_Block_Product_View_Description
31
+ */
32
+ ?>
33
+ <?php $_description = $this->getProduct()->getDescription(); ?>
34
+ <?php if ($_description): ?>
35
+ <div class="std">
36
+ <?php echo $this->helper('catalog/output')->productAttribute($this->getProduct(), $_description, 'description') ?>
37
+ </div>
38
+ <?php endif; ?>
app/design/frontend/default/shoe_store/template/easytabs/tabs.phtml ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design_default
22
+ * @package Mage
23
+ * @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /**
28
+ * Product view template
29
+ *
30
+ * @see Mage_Catalog_Block_Product_View
31
+ */
32
+ ?>
33
+ <ul class="tabs">
34
+ <?php $i = 0; ?>
35
+ <?php foreach ($this->getTabs() as $_index => $_tab): ?>
36
+ <?php if($this->getChildHtml($_tab['alias']) && strlen(strip_tags(trim($this->getChildHtml($_tab['alias']))))>0): ?>
37
+ <?php
38
+ $tab_title = $_tab['title'];
39
+ $tab_is_custom = strpos($_tab['alias'], 'custom');
40
+ $tab_is_cms= strpos($_tab['alias'], 'cms');
41
+ if($tab_is_custom === 0){
42
+ $tab_is_tmp_id = substr($_tab['alias'], 6);
43
+ $tab_is_custom_id = (!empty($tab_is_tmp_id)) ? $tab_is_tmp_id : '';
44
+ $tab_title = Mage::getStoreConfig('easy_tabs/custom/customtabname'.$tab_is_custom_id);
45
+ } elseif($tab_is_cms === 0) {
46
+ $tab_is_tmp_id = substr($_tab['alias'], 3);
47
+ $tab_is_custom_id = (!empty($tab_is_tmp_id)) ? $tab_is_tmp_id : '';
48
+ $tab_title = Mage::getStoreConfig('easy_tabs/customcms/tabnamecms'.$tab_is_custom_id);
49
+ }
50
+
51
+ ?>
52
+ <li id="product_tabs_<?php echo $_tab['alias'] ?>" <?php echo !$i ? 'class="active first"' : '' ?>><a href="#"><?php echo $tab_title; ?></a></li>
53
+ <?php $i++; ?>
54
+ <?php endif; ?>
55
+ <?php endforeach; ?>
56
+ </ul>
57
+ <div class="padder">
58
+ <?php foreach ($this->getTabs() as $_index => $_tab): ?>
59
+ <?php if($this->getChildHtml($_tab['alias'])): ?>
60
+ <div id="product_tabs_<?php echo $_tab['alias'] ?>_contents"><?php echo $this->getChildHtml($_tab['alias']); ?></div>
61
+ <?php endif; ?>
62
+ <?php endforeach; ?>
63
+ </div>
64
+ <script type="text/javascript">
65
+ var EasyTabs = Class.create();
66
+ EasyTabs.prototype = {
67
+ initialize: function(selector) {
68
+ $$(selector).each(this.initTab.bind(this));
69
+ },
70
+
71
+ initTab: function(el) {
72
+ el.href = 'javascript:void(0)';
73
+ if ($(el).up('li').hasClassName('active')) {
74
+ this.showContent(el);
75
+ }
76
+ el.observe('click', this.showContent.bind(this, el));
77
+ },
78
+
79
+ showContent: function(a) {
80
+ var li = $(a).up('li'),
81
+ ul = $(li).up('ul');
82
+
83
+ ul.select('li'/*, 'ol'*/).each(function(el) {
84
+ var contents = $(el.id + '_contents');
85
+ if (el.id == li.id) {
86
+ el.addClassName('active');
87
+ contents.show();
88
+ } else {
89
+ el.removeClassName('active');
90
+ contents.hide();
91
+ }
92
+ });
93
+ }
94
+ }
95
+ new EasyTabs('.tabs a');
96
+ </script>
app/design/frontend/default/shoe_store/template/magic/catalog/product/view/media.phtml ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $_product = $this->getProduct();
3
+ $_helper = $this->helper('catalog/output');
4
+ ?>
5
+ <?php
6
+ $mainImagePath = '';
7
+ $galleryImages = $this->getGalleryImages();
8
+ if (count($galleryImages) > 0) {
9
+ $gallery = '<div class="more-views">';
10
+ $gallery .= '<ul>';
11
+ foreach ($galleryImages as $_image) {
12
+ if ($_image->getFile() == $_product->getData('small_image')) {
13
+ $mainImagePath = $this->getGalleryUrl($_image);
14
+ }
15
+ $gallery .= '<li>'
16
+ . '<a href="' . $this->helper('catalog/image')->init($this->getProduct(), 'image', $_image->getFile()) . '" '
17
+ . 'rel="popupWin:\'' . $this->getGalleryUrl($_image) . '\', useZoom: \'cloudZoom\', smallImage: \'' . $this->getCloudImage($this->getProduct(), $_image) . '\'" class="cloud-zoom-gallery" title="' . $this->htmlEscape($_image->getLabel()) . '">'
18
+ . '<img src="' . $this->helper('catalog/image')->init($this->getProduct(), 'thumbnail', $_image->getFile())->resize(95) . '" alt="' . $this->htmlEscape($_image->getLabel()) . '" />'
19
+ . '</a></li>';
20
+ }
21
+ $gallery .= '</ul></div>';
22
+ }
23
+ ?>
24
+
25
+ <?php if ($_product->getImage() != 'no_selection' && $_product->getImage()): ?>
26
+ <div class="badge">
27
+ <?php if($_product->getData('new')){echo '<span class="new">'. $_product->getAttributeText('new').'</span>'; }?>
28
+ <?php if($_product->getData('sale')){echo '<span class="sale">'. $_product->getAttributeText('sale').'</span>'; }?>
29
+ </div>
30
+ <p class="product-image product-image-zoom">
31
+
32
+ <a rel="<?php echo $this->renderCloudOptions(); ?>" gallery="<?php echo $mainImagePath; ?>" href="<?php echo $this->helper('catalog/image')->init($_product, 'image'); ?>" class="cloud-zoom ajax" id="cloudZoom">
33
+ <?php
34
+ $_img = '<img id="image" src="'.$this->getCloudImage($_product).'" alt="'.$this->htmlEscape($this->getImageLabel()).'" title="'.$this->htmlEscape($this->getImageLabel()).'" />';
35
+ echo $_helper->productAttribute($_product, $_img, 'image');
36
+ ?>
37
+ </a>
38
+ </p>
39
+ <?php if(isset($gallery)): ?>
40
+ <p class="zoom-notice" id="track_hint"><?php echo $this->__('Click on above image to view full picture') ?></p>
41
+ <div class="thumbbox"><?php echo $gallery; ?></div>
42
+ <?php endif; ?>
43
+ <?php else: ?>
44
+ <p class="product-image">
45
+ <?php
46
+ $_img = '<img src="'.$this->helper('catalog/image')->init($_product, 'image')->resize(265).'" alt="'.$this->htmlEscape($this->getImageLabel()).'" title="'.$this->htmlEscape($this->getImageLabel()).'" />';
47
+ echo $_helper->productAttribute($_product, $_img, 'image');
48
+ ?>
49
+ </p>
50
+ <?php endif; ?>
51
+ <script type="text/javascript">
52
+ jQuery(document).ready(function(){
53
+ var trigggerflag = 1;
54
+ jQuery('.product-image-zoom #wrap').click(function(){
55
+ if(trigggerflag){
56
+ trigggerflag =0;
57
+ jQuery('#cloudZoom').trigger('click');
58
+ }
59
+ trigggerflag =1;
60
+ });
61
+ jQuery('.more-views').jcarousel({
62
+ start: 1,
63
+ scroll:1,
64
+ wrap: 'circular'
65
+ });
66
+ jQuery('.more-views').hover(function(){
67
+ jQuery(".jcarousel-prev").stop().delay(0).animate({left: '-21px'},{queue:true,duration:300});
68
+ jQuery(".jcarousel-next").stop().delay(0).animate({right: '-21px'},{queue:true,duration:300});
69
+ },function(){
70
+ jQuery(".jcarousel-prev").stop().delay(0).animate({left:'5px'},{queue:true,duration:300});
71
+ jQuery(".jcarousel-next").stop().delay(0).animate({right:'5px'},{queue:true,duration:300});
72
+ });
73
+ });
74
+ </script>
75
+
app/design/frontend/default/shoe_store/template/newsletter/subscribe.phtml ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="footer-block footer-block-subscribe">
28
+ <div class="block-title">
29
+ <strong><span><?php echo $this->__('Newsletter') ?></span></strong>
30
+ </div>
31
+ <form action="<?php echo $this->getFormActionUrl() ?>" method="post" id="newsletter-validate-detail">
32
+ <div class="block-content">
33
+ <!--<div class="form-subscribe-header">
34
+ <label for="newsletter"><?php // echo $this->__('Sign Up for Our Newsletter:') ?></label>
35
+ </div>-->
36
+ <div class="newsletter_bg bscclearfix">
37
+ <div class="input-box">
38
+ <input type="text" name="email" id="newsletter" title="<?php echo $this->__('Sign up for our newsletter') ?>" class="input-text required-entry validate-email" />
39
+ </div>
40
+ <div class="actions">
41
+ <button type="submit" title="<?php echo $this->__('GO') ?>" class="button"><span><span><?php echo $this->__('GO') ?></span></span></button>
42
+ </div>
43
+ </div>
44
+ <label><?php echo $this->__('Please enter valid email id. We won\'t spam') ?></label>
45
+ </div>
46
+ </form>
47
+ <script type="text/javascript">
48
+ //<![CDATA[
49
+ var newsletterSubscriberFormDetail = new VarienForm('newsletter-validate-detail');
50
+ //]]>
51
+ </script>
52
+ </div>
app/design/frontend/default/shoe_store/template/page/1column.phtml ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Template for Mage_Page_Block_Html
30
+ */
31
+ ?>
32
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
33
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" lang="<?php echo $this->getLang() ?>">
34
+ <head>
35
+ <?php echo $this->getChildHtml('head') ?>
36
+ </head>
37
+ <body<?php echo $this->getBodyClass()?' class="'.$this->getBodyClass().'"':'' ?>>
38
+ <?php echo $this->getChildHtml('after_body_start') ?>
39
+ <div class="wrapper">
40
+ <?php echo $this->getChildHtml('global_notices') ?>
41
+ <div class="page">
42
+ <?php echo $this->getChildHtml('header') ?>
43
+ <div class="main-container col1-layout">
44
+ <div class="main container">
45
+ <?php echo $this->getChildHtml('breadcrumbs') ?>
46
+ <div class="col-main">
47
+ <?php echo $this->getChildHtml('global_messages') ?>
48
+ <?php echo $this->getChildHtml('content') ?>
49
+ </div>
50
+ </div>
51
+ </div>
52
+ <?php echo $this->getChildHtml('footer') ?>
53
+ <?php echo $this->getChildHtml('before_body_end') ?>
54
+ </div>
55
+ </div>
56
+ <?php echo $this->getAbsoluteFooter() ?>
57
+ </body>
58
+ </html>
app/design/frontend/default/shoe_store/template/page/2columns-left.phtml ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Template for Mage_Page_Block_Html
30
+ */
31
+ ?>
32
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
33
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" lang="<?php echo $this->getLang() ?>">
34
+ <head>
35
+ <?php echo $this->getChildHtml('head') ?>
36
+ </head>
37
+ <body<?php echo $this->getBodyClass()?' class="'.$this->getBodyClass().'"':'' ?>>
38
+ <?php echo $this->getChildHtml('after_body_start') ?>
39
+ <div class="wrapper">
40
+ <?php echo $this->getChildHtml('global_notices') ?>
41
+ <div class="page">
42
+ <?php echo $this->getChildHtml('header') ?>
43
+ <div class="main-container col2-left-layout">
44
+ <div class="main container">
45
+ <?php echo $this->getChildHtml('breadcrumbs') ?>
46
+ <div class="col-main span9">
47
+ <?php echo $this->getChildHtml('global_messages') ?>
48
+ <?php echo $this->getChildHtml('content') ?>
49
+ </div>
50
+ <div class="col-left sidebar span3"><?php echo $this->getChildHtml('left') ?></div>
51
+ </div>
52
+ </div>
53
+ <?php echo $this->getChildHtml('footer') ?>
54
+ <?php echo $this->getChildHtml('before_body_end') ?>
55
+ </div>
56
+ </div>
57
+ <?php echo $this->getAbsoluteFooter() ?>
58
+ </body>
59
+ </html>
app/design/frontend/default/shoe_store/template/page/2columns-right.phtml ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Template for Mage_Page_Block_Html
30
+ */
31
+ ?>
32
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
33
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" lang="<?php echo $this->getLang() ?>">
34
+ <head>
35
+ <?php echo $this->getChildHtml('head') ?>
36
+ </head>
37
+ <body<?php echo $this->getBodyClass()?' class="'.$this->getBodyClass().'"':'' ?>>
38
+ <?php echo $this->getChildHtml('after_body_start') ?>
39
+ <div class="wrapper">
40
+ <?php echo $this->getChildHtml('global_notices') ?>
41
+ <div class="page">
42
+ <?php echo $this->getChildHtml('header') ?>
43
+ <div class="main-container col2-right-layout">
44
+ <div class="main container">
45
+ <div class="span12">
46
+ <?php echo $this->getChildHtml('breadcrumbs') ?>
47
+ <div class="col-main span9">
48
+ <?php echo $this->getChildHtml('global_messages') ?>
49
+ <?php echo $this->getChildHtml('content') ?>
50
+ </div>
51
+ <div class="col-right sidebar span3"><?php echo $this->getChildHtml('right') ?></div>
52
+ </div>
53
+ </div>
54
+ </div>
55
+ <?php echo $this->getChildHtml('footer') ?>
56
+ <?php echo $this->getChildHtml('before_body_end') ?>
57
+ </div>
58
+ </div>
59
+ <?php echo $this->getAbsoluteFooter() ?>
60
+ </body>
61
+ </html>
app/design/frontend/default/shoe_store/template/page/3columns.phtml ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Template for Mage_Page_Block_Html
30
+ */
31
+ ?>
32
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
33
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" lang="<?php echo $this->getLang() ?>">
34
+ <head>
35
+ <?php echo $this->getChildHtml('head') ?>
36
+ </head>
37
+ <body<?php echo $this->getBodyClass()?' class="'.$this->getBodyClass().'"':'' ?>>
38
+ <?php echo $this->getChildHtml('after_body_start') ?>
39
+ <div class="wrapper">
40
+ <?php echo $this->getChildHtml('global_notices') ?>
41
+ <div class="page">
42
+ <?php echo $this->getChildHtml('header') ?>
43
+ <div class="main-container col3-layout">
44
+ <div class="main container">
45
+ <?php echo $this->getChildHtml('breadcrumbs') ?>
46
+ <div class="col-left sidebar span3"><?php echo $this->getChildHtml('left') ?></div>
47
+ <div class="col-wrapper span6">
48
+ <div class="col-main">
49
+ <?php echo $this->getChildHtml('global_messages') ?>
50
+ <?php echo $this->getChildHtml('content') ?>
51
+ </div>
52
+ </div>
53
+ <div class="col-right sidebar span3"><?php echo $this->getChildHtml('right') ?></div>
54
+ </div>
55
+ </div>
56
+ <?php echo $this->getChildHtml('footer') ?>
57
+ <?php echo $this->getChildHtml('before_body_end') ?>
58
+ </div>
59
+ </div>
60
+ <?php echo $this->getAbsoluteFooter() ?>
61
+ </body>
62
+ </html>
app/design/frontend/default/shoe_store/template/page/html/breadcrumbs.phtml ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php if($crumbs && is_array($crumbs)): ?>
28
+ <div class="breadcrumbs">
29
+ <ul>
30
+ <?php foreach($crumbs as $_crumbName=>$_crumbInfo): ?>
31
+ <li class="<?php echo $_crumbName ?>">
32
+ <?php if($_crumbInfo['link']): ?>
33
+ <a href="<?php echo $_crumbInfo['link'] ?>" title="<?php echo $this->htmlEscape($_crumbInfo['title']) ?>"><?php echo $this->htmlEscape($_crumbInfo['label']) ?></a>
34
+ <?php elseif($_crumbInfo['last']): ?>
35
+ <strong><?php echo $this->htmlEscape($_crumbInfo['label']) ?></strong>
36
+ <?php else: ?>
37
+ <?php echo $this->htmlEscape($_crumbInfo['label']) ?>
38
+ <?php endif; ?>
39
+ <?php if(!$_crumbInfo['last']): ?>
40
+ <span>/ </span>
41
+ <?php endif; ?>
42
+ </li>
43
+ <?php endforeach; ?>
44
+ </ul>
45
+ <a href="javascript:void(0);" onclick="window.history.back();" class="return_previous_page">Return to Previous Page</a>
46
+ </div>
47
+ <?php endif; ?>
app/design/frontend/default/shoe_store/template/page/html/footer.phtml ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <footer>
28
+ <article class="footer_article">
29
+ <section cite="footer_first_section">
30
+ <div class="footer_top_arrow"></div>
31
+ <div class="footer-container">
32
+ <div class="footer container">
33
+ <div class="span12">
34
+ <div class="newsletter foot_pipe span4">
35
+ <?php echo $this->getLayout()->createBlock('newsletter/subscribe')->setTemplate('newsletter/subscribe.phtml')->toHtml(); ?>
36
+ </div>
37
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('bottom_links')->toHtml() ?>
38
+
39
+ </div>
40
+ </div>
41
+ </div>
42
+ <div class="footer_bot_arrow"></div>
43
+ </section>
44
+ <section cite="footer_second_section">
45
+ <div class="footer-links">
46
+ <div class="footer container">
47
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('footer_links')->toHtml() ?>
48
+ <?php echo $this->getChildHtml('footer_links') ?>
49
+ <!-- <p class="bugs"><?php echo $this->__('Help Us to Keep Magento Healthy') ?> - <a href="http://www.magentocommerce.com/bug-tracking" onclick="this.target='_blank'"><strong><?php echo $this->__('Report All Bugs') ?></strong></a> <?php echo $this->__('(ver. %s)', Mage::getVersion()) ?></p>-->
50
+ <div>
51
+ <address><?php echo $this->getCopyright() ?></address>
52
+ <?php echo $this->getChildHtml('store_switcher') ?>
53
+ <p class="poweredby" style="clear: both; text-align: center; line-height: 10px;margin-top: 5px;">Designed by <a class="bsetec" title="BseTec Themes" target="_blank" href="http://bsetec.com" style="display: inline; color: rgb(235, 86, 155);">BseTec Themes</a> | Powered by <a class="magento" title="Magento" target="_blank" href="http://magentocommerce.com" style="display: inline; color: rgb(239, 59, 41);">Magento</a></p>
54
+ </div>
55
+ </div>
56
+ </div>
57
+ </section>
58
+ </article>
59
+ </footer>
app/design/frontend/default/shoe_store/template/page/html/footer.phtml~ ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <footer>
28
+ <article class="footer_article">
29
+ <section cite="footer_first_section">
30
+ <div class="footer_top_arrow"></div>
31
+ <div class="footer-container">
32
+ <div class="footer container">
33
+ <div class="span12">
34
+ <div class="newsletter foot_pipe span4">
35
+ <?php echo $this->getLayout()->createBlock('newsletter/subscribe')->setTemplate('newsletter/subscribe.phtml')->toHtml(); ?>
36
+ </div>
37
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('bottom_links')->toHtml() ?>
38
+
39
+ </div>
40
+ </div>
41
+ </div>
42
+ <div class="footer_bot_arrow"></div>
43
+ </section>
44
+ <section cite="footer_second_section">
45
+ <div class="footer-links">
46
+ <div class="footer container">
47
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('footer_links')->toHtml() ?>
48
+ <?php echo $this->getChildHtml('footer_links') ?>
49
+ <!-- <p class="bugs"><?php echo $this->__('Help Us to Keep Magento Healthy') ?> - <a href="http://www.magentocommerce.com/bug-tracking" onclick="this.target='_blank'"><strong><?php echo $this->__('Report All Bugs') ?></strong></a> <?php echo $this->__('(ver. %s)', Mage::getVersion()) ?></p>-->
50
+ <div>
51
+ <address><?php echo $this->getCopyright() ?></address>
52
+ <?php echo $this->getChildHtml('store_switcher') ?>
53
+ </div>
54
+ </div>
55
+ </div>
56
+ </section>
57
+ </article>
58
+ </footer>
app/design/frontend/default/shoe_store/template/page/html/head.phtml ADDED
@@ -0,0 +1,300 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+
5
+ * Magento
6
+
7
+ *
8
+
9
+ * NOTICE OF LICENSE
10
+
11
+ *
12
+
13
+ * This source file is subject to the Academic Free License (AFL 3.0)
14
+
15
+ * that is bundled with this package in the file LICENSE_AFL.txt.
16
+
17
+ * It is also available through the world-wide-web at this URL:
18
+
19
+ * http://opensource.org/licenses/afl-3.0.php
20
+
21
+ * If you did not receive a copy of the license and are unable to
22
+
23
+ * obtain it through the world-wide-web, please send an email
24
+
25
+ * to license@magentocommerce.com so we can send you a copy immediately.
26
+
27
+ *
28
+
29
+ * DISCLAIMER
30
+
31
+ *
32
+
33
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
34
+
35
+ * versions in the future. If you wish to customize Magento for your
36
+
37
+ * needs please refer to http://www.magentocommerce.com for more information.
38
+
39
+ *
40
+
41
+ * @category design
42
+
43
+ * @package base_default
44
+
45
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
46
+
47
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
48
+
49
+ */
50
+
51
+ ?>
52
+
53
+ <meta http-equiv="Content-Type" content="<?php echo $this->getContentType() ?>" />
54
+
55
+ <title><?php echo $this->getTitle() ?></title>
56
+
57
+ <meta name="description" content="<?php echo htmlspecialchars($this->getDescription()) ?>" />
58
+
59
+ <meta name="keywords" content="<?php echo htmlspecialchars($this->getKeywords()) ?>" />
60
+
61
+ <meta name="robots" content="<?php echo htmlspecialchars($this->getRobots()) ?>" />
62
+
63
+ <link rel="icon" href="<?php echo $this->getFaviconFile(); ?>" type="image/x-icon" />
64
+
65
+ <link rel="shortcut icon" href="<?php echo $this->getFaviconFile(); ?>" type="image/x-icon" />
66
+
67
+ <!--[if lt IE 7]>
68
+
69
+ <script type="text/javascript">
70
+
71
+ //<![CDATA[
72
+
73
+ var BLANK_URL = '<?php echo $this->helper('core/js')->getJsUrl('blank.html') ?>';
74
+
75
+ var BLANK_IMG = '<?php echo $this->helper('core/js')->getJsUrl('spacer.gif') ?>';
76
+
77
+ //]]>
78
+
79
+ </script>
80
+
81
+ <![endif]-->
82
+
83
+ <?php echo $this->getCssJsHtml() ?>
84
+
85
+ <?php echo $this->getChildHtml() ?>
86
+
87
+ <?php echo $this->helper('core/js')->getTranslatorScript() ?>
88
+
89
+ <?php echo $this->getIncludes() ?>
90
+
91
+ <script type="text/javascript">
92
+
93
+ var price, sepstr, firstpart, secondpart, currency;
94
+
95
+ jQuery(document).ready(function() {
96
+
97
+ jQuery('.newproducts .price-box .regular-price .price, .newproducts .old-price .price, .newproducts .special-price .price, .category-products .price-box .regular-price .price, .category-products .old-price .price, .category-products .special-price .price, .product-shop .price-box .regular-price .price, .product-shop .old-price .price, .product-shop .special-price .price').each(function(){
98
+
99
+ price = jQuery.trim(jQuery(this).text());
100
+
101
+ sepstr = price.split('.');
102
+
103
+ firstpart = sepstr[0];
104
+
105
+ secondpart = sepstr[1];
106
+
107
+ currency = firstpart[0];
108
+
109
+ firstpart = firstpart.replace(currency,'');
110
+
111
+ jQuery(this).html('<span class="cur_sym">'+ currency +'</span><span class="price_int">'+ firstpart +'.</span><span class="price_deci">'+ secondpart +'</span>');
112
+
113
+ });
114
+
115
+ });
116
+
117
+ </script>
118
+
119
+ <!--<script type="text/javascript">
120
+
121
+ jQuery(document).ready(function() {
122
+
123
+ jQuery(".carousel").carousel({
124
+
125
+ interval: 2000
126
+
127
+ /*scroll: 1,
128
+
129
+ wrap: 'circular',*/
130
+
131
+ //wrap: 'circular',
132
+
133
+ // This tells jCarousel NOT to autobuild prev/next buttons
134
+
135
+ /*buttonNextHTML: null,
136
+
137
+ buttonPrevHTML: null*/
138
+
139
+ });
140
+
141
+ });
142
+
143
+ </script>-->
144
+
145
+ <!--[if lt IE 8]>
146
+
147
+ <link rel="stylesheet" type="text/css" id="res1" />
148
+
149
+ <link rel="stylesheet" type="text/css" id="res2" />
150
+
151
+ <link rel="stylesheet" type="text/css" id="res3" />
152
+
153
+ <link rel="stylesheet" type="text/css" id="res4" />
154
+
155
+ <link rel="stylesheet" type="text/css" id="res5" />
156
+
157
+ <link rel="stylesheet" type="text/css" id="res6" />
158
+
159
+ <link rel="stylesheet" type="text/css" id="res7" />
160
+
161
+ <script type="text/javascript">
162
+
163
+ jQuery(document).ready(function() {
164
+
165
+
166
+
167
+ function adjustStyle(width) {
168
+
169
+ width = parseInt(width);
170
+
171
+ if (width >= 1200) {
172
+
173
+ jQuery("#res1").attr("href", "<?php echo $this->getSkinUrl('css/min1200.css'); ?>");
174
+ jQuery("#res2").removeAttr("href");jQuery("#res3").removeAttr("href");jQuery("#res4").removeAttr("href");jQuery("#res5").removeAttr("href");jQuery("#res6").removeAttr("href");jQuery("#res7").removeAttr("href");
175
+ } else
176
+ {
177
+ jQuery("#res1").removeAttr("href");
178
+ }
179
+ if ((width <= 1024))
180
+
181
+ {
182
+
183
+ jQuery("#res1").attr("href", "<?php echo $this->getSkinUrl('css/max1024.css'); ?>");
184
+
185
+ if(width <= 980)
186
+
187
+ {
188
+
189
+ jQuery("#res2").attr("href", "<?php echo $this->getSkinUrl('css/max979.css'); ?>");
190
+
191
+ if((width <= 767))
192
+
193
+ {
194
+
195
+ jQuery("#res5").attr("href", "<?php echo $this->getSkinUrl('css/max767.css'); ?>");
196
+
197
+ if(width <= 480)
198
+
199
+ {
200
+
201
+ jQuery("#res6").attr("href", "<?php echo $this->getSkinUrl('css/max480.css'); ?>");
202
+
203
+ if(width <= 420)
204
+
205
+ {
206
+
207
+ jQuery("#res7").attr("href", "<?php echo $this->getSkinUrl('css/max420.css'); ?>");
208
+
209
+ }
210
+
211
+ else{jQuery("#res7").removeAttr("href");}
212
+
213
+ }
214
+
215
+ else{jQuery("#res6").removeAttr("href");jQuery("#res7").removeAttr("href");}
216
+
217
+ }
218
+
219
+ else{jQuery("#res5").removeAttr("href");jQuery("#res6").removeAttr("href");jQuery("#res7").removeAttr("href");}
220
+
221
+ }
222
+
223
+ else{jQuery("#res2").removeAttr("href");jQuery("#res5").removeAttr("href");jQuery("#res6").removeAttr("href");jQuery("#res7").removeAttr("href");}
224
+
225
+
226
+ if ((width >= 768) && (width <= 979)) {
227
+
228
+ jQuery("#res3").attr("href", "<?php echo $this->getSkinUrl('css/min768px_max979px.css'); ?>");
229
+
230
+ }
231
+
232
+ else{jQuery("#res3").removeAttr("href");}
233
+
234
+ if((width >= 600) && (width <= 800))
235
+
236
+ {
237
+
238
+ jQuery("#res4").attr("href", "<?php echo $this->getSkinUrl('css/min600px_max800px.css'); ?>");
239
+
240
+ }
241
+
242
+ else{jQuery("#res4").removeAttr("href");}
243
+ }
244
+ }
245
+
246
+
247
+
248
+ jQuery(function() {
249
+
250
+ adjustStyle(jQuery(this).width());
251
+
252
+ jQuery(window).resize(function() {
253
+
254
+ adjustStyle(jQuery(this).width());
255
+
256
+ });
257
+
258
+ });
259
+
260
+ });
261
+
262
+ </script><![endif]-->
263
+
264
+ <script type="text/javascript">
265
+
266
+ jQuery(document).ready(function() {
267
+
268
+ jQuery(window).scroll(function () {
269
+
270
+ if (jQuery(this).scrollTop() > 100) {
271
+
272
+ jQuery('#back-top').fadeIn();
273
+
274
+ } else {
275
+
276
+ jQuery('#back-top').fadeOut();
277
+
278
+ }
279
+
280
+ });
281
+
282
+
283
+
284
+ // scroll body to 0px on click
285
+
286
+ jQuery('#back-top a').click(function () {
287
+
288
+ jQuery('body,html').animate({
289
+
290
+ scrollTop: 0
291
+
292
+ }, 800);
293
+
294
+ return false;
295
+
296
+ });
297
+
298
+ });
299
+
300
+ </script>
app/design/frontend/default/shoe_store/template/page/html/head.phtml~ ADDED
@@ -0,0 +1,302 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+
5
+ * Magento
6
+
7
+ *
8
+
9
+ * NOTICE OF LICENSE
10
+
11
+ *
12
+
13
+ * This source file is subject to the Academic Free License (AFL 3.0)
14
+
15
+ * that is bundled with this package in the file LICENSE_AFL.txt.
16
+
17
+ * It is also available through the world-wide-web at this URL:
18
+
19
+ * http://opensource.org/licenses/afl-3.0.php
20
+
21
+ * If you did not receive a copy of the license and are unable to
22
+
23
+ * obtain it through the world-wide-web, please send an email
24
+
25
+ * to license@magentocommerce.com so we can send you a copy immediately.
26
+
27
+ *
28
+
29
+ * DISCLAIMER
30
+
31
+ *
32
+
33
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
34
+
35
+ * versions in the future. If you wish to customize Magento for your
36
+
37
+ * needs please refer to http://www.magentocommerce.com for more information.
38
+
39
+ *
40
+
41
+ * @category design
42
+
43
+ * @package base_default
44
+
45
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
46
+
47
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
48
+
49
+ */
50
+
51
+ ?>
52
+
53
+ <meta http-equiv="Content-Type" content="<?php echo $this->getContentType() ?>" />
54
+
55
+ <title><?php echo $this->getTitle() ?></title>
56
+
57
+ <meta name="description" content="<?php echo htmlspecialchars($this->getDescription()) ?>" />
58
+
59
+ <meta name="keywords" content="<?php echo htmlspecialchars($this->getKeywords()) ?>" />
60
+
61
+ <meta name="robots" content="<?php echo htmlspecialchars($this->getRobots()) ?>" />
62
+
63
+ <link rel="icon" href="<?php echo $this->getFaviconFile(); ?>" type="image/x-icon" />
64
+
65
+ <link rel="shortcut icon" href="<?php echo $this->getFaviconFile(); ?>" type="image/x-icon" />
66
+
67
+ <!--[if lt IE 7]>
68
+
69
+ <script type="text/javascript">
70
+
71
+ //<![CDATA[
72
+
73
+ var BLANK_URL = '<?php echo $this->helper('core/js')->getJsUrl('blank.html') ?>';
74
+
75
+ var BLANK_IMG = '<?php echo $this->helper('core/js')->getJsUrl('spacer.gif') ?>';
76
+
77
+ //]]>
78
+
79
+ </script>
80
+
81
+ <![endif]-->
82
+
83
+ <?php echo $this->getCssJsHtml() ?>
84
+
85
+ <?php echo $this->getChildHtml() ?>
86
+
87
+ <?php echo $this->helper('core/js')->getTranslatorScript() ?>
88
+
89
+ <?php echo $this->getIncludes() ?>
90
+
91
+ <script src="<?php echo $this->getSkinUrl('js/mdl/ajax_cart.js') ?>" type="text/javascript"></script>
92
+
93
+ <script type="text/javascript">
94
+
95
+ var price, sepstr, firstpart, secondpart, currency;
96
+
97
+ jQuery(document).ready(function() {
98
+
99
+ jQuery('.newproducts .price-box .regular-price .price, .newproducts .old-price .price, .newproducts .special-price .price, .category-products .price-box .regular-price .price, .category-products .old-price .price, .category-products .special-price .price, .product-shop .price-box .regular-price .price, .product-shop .old-price .price, .product-shop .special-price .price').each(function(){
100
+
101
+ price = jQuery.trim(jQuery(this).text());
102
+
103
+ sepstr = price.split('.');
104
+
105
+ firstpart = sepstr[0];
106
+
107
+ secondpart = sepstr[1];
108
+
109
+ currency = firstpart[0];
110
+
111
+ firstpart = firstpart.replace(currency,'');
112
+
113
+ jQuery(this).html('<span class="cur_sym">'+ currency +'</span><span class="price_int">'+ firstpart +'.</span><span class="price_deci">'+ secondpart +'</span>');
114
+
115
+ });
116
+
117
+ });
118
+
119
+ </script>
120
+
121
+ <!--<script type="text/javascript">
122
+
123
+ jQuery(document).ready(function() {
124
+
125
+ jQuery(".carousel").carousel({
126
+
127
+ interval: 2000
128
+
129
+ /*scroll: 1,
130
+
131
+ wrap: 'circular',*/
132
+
133
+ //wrap: 'circular',
134
+
135
+ // This tells jCarousel NOT to autobuild prev/next buttons
136
+
137
+ /*buttonNextHTML: null,
138
+
139
+ buttonPrevHTML: null*/
140
+
141
+ });
142
+
143
+ });
144
+
145
+ </script>-->
146
+
147
+ <!--[if lt IE 8]>
148
+
149
+ <link rel="stylesheet" type="text/css" id="res1" />
150
+
151
+ <link rel="stylesheet" type="text/css" id="res2" />
152
+
153
+ <link rel="stylesheet" type="text/css" id="res3" />
154
+
155
+ <link rel="stylesheet" type="text/css" id="res4" />
156
+
157
+ <link rel="stylesheet" type="text/css" id="res5" />
158
+
159
+ <link rel="stylesheet" type="text/css" id="res6" />
160
+
161
+ <link rel="stylesheet" type="text/css" id="res7" />
162
+
163
+ <script type="text/javascript">
164
+
165
+ jQuery(document).ready(function() {
166
+
167
+
168
+
169
+ function adjustStyle(width) {
170
+
171
+ width = parseInt(width);
172
+
173
+ if (width >= 1200) {
174
+
175
+ jQuery("#res1").attr("href", "<?php echo $this->getSkinUrl('css/min1200.css'); ?>");
176
+ jQuery("#res2").removeAttr("href");jQuery("#res3").removeAttr("href");jQuery("#res4").removeAttr("href");jQuery("#res5").removeAttr("href");jQuery("#res6").removeAttr("href");jQuery("#res7").removeAttr("href");
177
+ } else
178
+ {
179
+ jQuery("#res1").removeAttr("href");
180
+ }
181
+ if ((width <= 1024))
182
+
183
+ {
184
+
185
+ jQuery("#res1").attr("href", "<?php echo $this->getSkinUrl('css/max1024.css'); ?>");
186
+
187
+ if(width <= 980)
188
+
189
+ {
190
+
191
+ jQuery("#res2").attr("href", "<?php echo $this->getSkinUrl('css/max979.css'); ?>");
192
+
193
+ if((width <= 767))
194
+
195
+ {
196
+
197
+ jQuery("#res5").attr("href", "<?php echo $this->getSkinUrl('css/max767.css'); ?>");
198
+
199
+ if(width <= 480)
200
+
201
+ {
202
+
203
+ jQuery("#res6").attr("href", "<?php echo $this->getSkinUrl('css/max480.css'); ?>");
204
+
205
+ if(width <= 420)
206
+
207
+ {
208
+
209
+ jQuery("#res7").attr("href", "<?php echo $this->getSkinUrl('css/max420.css'); ?>");
210
+
211
+ }
212
+
213
+ else{jQuery("#res7").removeAttr("href");}
214
+
215
+ }
216
+
217
+ else{jQuery("#res6").removeAttr("href");jQuery("#res7").removeAttr("href");}
218
+
219
+ }
220
+
221
+ else{jQuery("#res5").removeAttr("href");jQuery("#res6").removeAttr("href");jQuery("#res7").removeAttr("href");}
222
+
223
+ }
224
+
225
+ else{jQuery("#res2").removeAttr("href");jQuery("#res5").removeAttr("href");jQuery("#res6").removeAttr("href");jQuery("#res7").removeAttr("href");}
226
+
227
+
228
+ if ((width >= 768) && (width <= 979)) {
229
+
230
+ jQuery("#res3").attr("href", "<?php echo $this->getSkinUrl('css/min768px_max979px.css'); ?>");
231
+
232
+ }
233
+
234
+ else{jQuery("#res3").removeAttr("href");}
235
+
236
+ if((width >= 600) && (width <= 800))
237
+
238
+ {
239
+
240
+ jQuery("#res4").attr("href", "<?php echo $this->getSkinUrl('css/min600px_max800px.css'); ?>");
241
+
242
+ }
243
+
244
+ else{jQuery("#res4").removeAttr("href");}
245
+ }
246
+ }
247
+
248
+
249
+
250
+ jQuery(function() {
251
+
252
+ adjustStyle(jQuery(this).width());
253
+
254
+ jQuery(window).resize(function() {
255
+
256
+ adjustStyle(jQuery(this).width());
257
+
258
+ });
259
+
260
+ });
261
+
262
+ });
263
+
264
+ </script><![endif]-->
265
+
266
+ <script type="text/javascript">
267
+
268
+ jQuery(document).ready(function() {
269
+
270
+ jQuery(window).scroll(function () {
271
+
272
+ if (jQuery(this).scrollTop() > 100) {
273
+
274
+ jQuery('#back-top').fadeIn();
275
+
276
+ } else {
277
+
278
+ jQuery('#back-top').fadeOut();
279
+
280
+ }
281
+
282
+ });
283
+
284
+
285
+
286
+ // scroll body to 0px on click
287
+
288
+ jQuery('#back-top a').click(function () {
289
+
290
+ jQuery('body,html').animate({
291
+
292
+ scrollTop: 0
293
+
294
+ }, 800);
295
+
296
+ return false;
297
+
298
+ });
299
+
300
+ });
301
+
302
+ </script>
app/design/frontend/default/shoe_store/template/page/html/header.phtml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ /**
27
+ * @var Mage_Page_Block_Html_Header $this
28
+ */
29
+ ?>
30
+ <p id="back-top">
31
+ <a href="javascript:void(0);"><span></span>Back to Top</a>
32
+ </p>
33
+ <div class="header-top-container">
34
+ <div class="header-top container">
35
+ <div class="span12">
36
+ <div class="span6">
37
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('top_links')->toHtml() ?>
38
+ </div>
39
+ <div class="search span6">
40
+
41
+ <div class="store_languages_search_con">
42
+ <div class="store_languages">
43
+ <?php echo $this->getChildHtml('store_language') ?>
44
+ </div>
45
+ <div class="search_cotainer">
46
+ <?php echo $this->getChildHtml('topSearch') ?>
47
+ </div>
48
+ </div>
49
+ </div>
50
+
51
+ </div>
52
+ </div>
53
+ </div>
54
+ <div class="header-container">
55
+ <div class="header container">
56
+ <div class="span12">
57
+ <?php if ($this->getIsHomePage()):?>
58
+ <h1 class="logo span2"><strong><?php echo $this->getLogoAlt() ?></strong><a href="<?php echo $this->getUrl('') ?>" title="<?php echo $this->getLogoAlt() ?>" class="logo"><img src="<?php echo $this->getLogoSrc() ?>" alt="<?php echo $this->getLogoAlt() ?>" /></a></h1>
59
+ <?php else:?>
60
+ <a href="<?php echo $this->getUrl('') ?>" title="<?php echo $this->getLogoAlt() ?>" class="logo"><strong><?php echo $this->getLogoAlt() ?></strong><img src="<?php echo $this->getLogoSrc() ?>" alt="<?php echo $this->getLogoAlt() ?>" /></a>
61
+ <?php endif?>
62
+ <div class="quick-access span10">
63
+
64
+ <p class="welcome-msg"><?php echo $this->getWelcome() ?> <?php echo $this->getAdditionalHtml() ?>
65
+ <?php if (! Mage::getSingleton('customer/session')->isLoggedIn()): ?>
66
+ <a class="lock" href="<?php echo $this->getUrl('') ?>customer/account/login/">Login</a>
67
+ <?php else: ?>
68
+ <a class="lock" href="<?php echo $this->getUrl('') ?>customer/account/logout/">Logout</a>
69
+ <?php endif; ?>
70
+ </p>
71
+ <?php echo $this->getChildHtml('topLinks') ?>
72
+
73
+ </div>
74
+ </div>
75
+ <?php echo $this->getChildHtml('topContainer'); ?>
76
+ </div>
77
+ </div>
78
+ <?php echo $this->getChildHtml('topMenu') ?>
79
+ <?php $routeName = Mage::app()->getRequest()->getRouteName();
80
+ $identifier = Mage::getSingleton('cms/page')->getIdentifier(); ?>
81
+ <?php // if ($this->getIsHomePage()):?>
82
+ <?php if($routeName == 'cms' && $identifier == 'home'): ?>
83
+ <div class="home_banner_container">
84
+ <div class="home_banner container">
85
+ <div id="myCarousel" class="carousel_no slide">
86
+ <div class="carousel-inner">
87
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('banner')->toHtml() ?>
88
+ </div>
89
+ <!--<a class="carousel-control left" href="#myCarousel" data-slide="prev">�?�</a>
90
+ <a class="carousel-control right" href="#myCarousel" data-slide="next">�?�</a>-->
91
+ </div>
92
+ </div>
93
+ </div>
94
+ <?php endif?>
95
+
app/design/frontend/default/shoe_store/template/page/html/pager.phtml ADDED
@@ -0,0 +1,124 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Pager template
30
+ *
31
+ * @see Mage_Page_Block_Html_Pager
32
+ */
33
+ ?>
34
+ <?php if($this->getCollection()->getSize()): ?>
35
+
36
+ <?php if($this->getUseContainer()): ?>
37
+ <div class="pager">
38
+ <?php endif ?>
39
+
40
+ <?php if($this->getShowAmounts()): ?>
41
+ <p class="amount">
42
+ <?php if($this->getLastPageNum()>1): ?>
43
+ <?php echo $this->__('Items %s to %s of %s total', $this->getFirstNum(), $this->getLastNum(), $this->getTotalNum()) ?>
44
+ <?php else: ?>
45
+ <strong><?php echo $this->__('%s Item(s)', $this->getTotalNum()) ?></strong>
46
+ <?php endif; ?>
47
+ </p>
48
+ <?php endif ?>
49
+
50
+ <?php if($this->getShowPerPage()): ?>
51
+ <div class="limiter">
52
+ <label><?php echo $this->__('Show') ?></label>
53
+ <select onchange="setLocation(this.value)">
54
+ <?php foreach ($this->getAvailableLimit() as $_key=>$_limit): ?>
55
+ <option value="<?php echo $this->getLimitUrl($_key) ?>"<?php if($this->isLimitCurrent($_key)): ?> selected="selected"<?php endif ?>>
56
+ <?php echo $_limit ?>
57
+ </option>
58
+ <?php endforeach; ?>
59
+ </select> <?php echo $this->__('per page') ?>
60
+ </div>
61
+ <?php endif ?>
62
+
63
+ <?php if($this->getLastPageNum()>1): ?>
64
+ <div class="pages">
65
+ <strong><?php echo $this->__('Page:') ?></strong>
66
+ <ol>
67
+ <?php if (!$this->isFirstPage()): ?>
68
+ <li>
69
+ <a class="previous<?php if(!$this->getAnchorTextForPrevious()): ?> i-previous<?php endif;?>" href="<?php echo $this->getPreviousPageUrl() ?>" title="<?php echo $this->__('Previous') ?>">
70
+ <?php if(!$this->getAnchorTextForPrevious()): ?>
71
+ <img src="<?php echo $this->getSkinUrl('images/shoe_store/toolbar_arrow_left.jpg') ?>" alt="<?php echo $this->__('Previous') ?>" class="v-middle" />
72
+ <?php else: ?>
73
+ <?php echo $this->getAnchorTextForPrevious() ?>
74
+ <?php endif;?>
75
+ </a>
76
+ </li>
77
+ <?php endif;?>
78
+
79
+ <?php if ($this->canShowFirst()): ?>
80
+ <li><a class="first" href="<?php echo $this->getFirstPageUrl() ?>">1</a></li>
81
+ <?php endif;?>
82
+
83
+ <?php if ($this->canShowPreviousJump()): ?>
84
+ <li><a class="previous_jump" title="" href="<?php echo $this->getPreviousJumpUrl() ?>">...</a></li>
85
+ <?php endif;?>
86
+
87
+ <?php foreach ($this->getFramePages() as $_page): ?>
88
+ <?php if ($this->isPageCurrent($_page)): ?>
89
+ <li class="current"><?php echo $_page ?></li>
90
+ <?php else: ?>
91
+ <li><a href="<?php echo $this->getPageUrl($_page) ?>"><?php echo $_page ?></a></li>
92
+ <?php endif;?>
93
+ <?php endforeach;?>
94
+
95
+
96
+ <?php if ($this->canShowNextJump()): ?>
97
+ <li><a class="next_jump" title="" href="<?php echo $this->getNextJumpUrl() ?>">...</a></li>
98
+ <?php endif;?>
99
+
100
+ <?php if ($this->canShowLast()): ?>
101
+ <li><a class="last" href="<?php echo $this->getLastPageUrl() ?>"><?php echo $this->getLastPageNum() ?></a></li>
102
+ <?php endif;?>
103
+
104
+ <?php if (!$this->isLastPage()): ?>
105
+ <li>
106
+ <a class="next<?php if(!$this->getAnchorTextForNext()): ?> i-next<?php endif; ?>" href="<?php echo $this->getNextPageUrl() ?>" title="<?php echo $this->__('Next') ?>">
107
+ <?php if(!$this->getAnchorTextForNext()): ?>
108
+ <img src="<?php echo $this->getSkinUrl('images/shoe_store/toolbar_arrow_right.jpg') ?>" alt="<?php echo $this->__('Next') ?>" class="v-middle" />
109
+ <?php else: ?>
110
+ <?php echo $this->getAnchorTextForNext() ?>
111
+ <?php endif;?>
112
+ </a>
113
+ </li>
114
+ <?php endif;?>
115
+ </ol>
116
+
117
+ </div>
118
+ <?php endif; ?>
119
+
120
+ <?php if($this->getUseContainer()): ?>
121
+ </div>
122
+ <?php endif ?>
123
+
124
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/page/html/top.links.phtml ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * @deprecated after 1.4.0.1
30
+ */
31
+ ?>
32
+ <?php if($toplinks && is_array($toplinks)): ?>
33
+ <ul class="links">
34
+ <?php echo $this->getChildHtml() ?>
35
+ <?php $i=0; foreach($toplinks as $_toplink): $i++;?>
36
+ <li class="toplink<?php echo $i;?><?php if($_toplink['first']||$_toplink['last']): ?> <?php if($_toplink['first']): ?>first<?php endif; ?><?php if($_toplink['last']): ?> last<?php endif; ?><?php endif; ?>" <?php echo $_toplink['liParams'] ?>><?php echo $_toplink['beforeText'] ?><a <?php echo $_toplink['aParams'] ?>><?php echo $_toplink['innerText'] ?></a><?php echo $_toplink['afterText'] ?></li>
37
+ <?php endforeach; ?>
38
+ </ul>
39
+ <?php endif; ?>
app/design/frontend/default/shoe_store/template/page/html/topmenu.phtml ADDED
@@ -0,0 +1,108 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Top menu for store
30
+ *
31
+ * @see Mage_Page_Block_Html_Topmenu
32
+ */
33
+ ?>
34
+ <?php $_menu = $this->getHtml('level-top') ?>
35
+ <?php if($_menu): ?>
36
+ <div class="nav-container">
37
+ <div class="container">
38
+ <div class="span12">
39
+ <ul id="nav" class="span9">
40
+ <?php echo $_menu ?>
41
+ <li class="custom_menu_links">
42
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('menu_links')->toHtml() ?>
43
+ </li>
44
+ <li class="last_bg"><a>&nbsp;</a></li>
45
+ </ul>
46
+ <ul class="mycartcheck span3">
47
+ <li><a class="mycart" href="<?php echo $this->getUrl('checkout/cart/') ?>">My Cart</a></li>
48
+ <li><a class="checkout" href="<?php echo $this->getUrl('checkout/onepage/') ?>">Checkout</a></li>
49
+ </ul>
50
+ </div>
51
+ </div>
52
+ </div>
53
+ <?php endif ?>
54
+ <?php if($_menu): ?>
55
+ <div class="mobMenu">
56
+ <div class="container">
57
+ <div class="span12">
58
+ <div class="span6">
59
+ <h1>
60
+ <span><?php echo$this->__('Brands');?></span>
61
+ <a class="menuBox highlight btn btn-navbar" href="javascript:void(0);"><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></a>
62
+ </h1>
63
+ <div id="menuInnner" style="display:none;">
64
+ <ul class="accordion">
65
+ <?php echo $_menu ?>
66
+ <?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('menu_links')->toHtml() ?>
67
+ <span class="clearfix"></span>
68
+ </ul>
69
+ </div>
70
+ </div>
71
+ <ul class="mycartcheck span6">
72
+ <li><a class="mycart" href="<?php echo $this->getUrl('checkout/cart/') ?>">My Cart</a></li>
73
+ <li><a class="checkout" href="<?php echo $this->getUrl('checkout/onepage/') ?>">Checkout</a></li>
74
+ </ul>
75
+ </div>
76
+ </div>
77
+ </div>
78
+ <?php endif ?>
79
+ <script type="text/javascript">
80
+ jQuery(document).ready(function() {
81
+ jQuery('.menuBox').click(function() {
82
+ if (jQuery('#menuInnner').is(":hidden"))
83
+ {
84
+ jQuery('#menuInnner').slideDown("fast");
85
+ } else {
86
+ jQuery('#menuInnner').slideUp("fast");
87
+ }
88
+ return false;
89
+ });
90
+ if(jQuery(window).width() <= 1000){
91
+ jQuery('.nav-container').hide();
92
+ jQuery('.mobMenu').show();
93
+ }else{
94
+ jQuery('.nav-container').show();
95
+ jQuery('.mobMenu').hide();
96
+ }
97
+ });
98
+ jQuery(window).resize(function(){
99
+ if(jQuery(window).width() <= 1000){
100
+ jQuery('.nav-container').hide();
101
+ jQuery('.mobMenu').show();
102
+ }else{
103
+ jQuery('.nav-container').show();
104
+ jQuery('.mobMenu').hide();
105
+ }
106
+ });
107
+ </script>
108
+
app/design/frontend/default/shoe_store/template/page/switch/languages.phtml ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Language switcher template
30
+ *
31
+ * @see Mage_Page_Block_Switch
32
+ */
33
+ ?>
34
+ <?php if(count($this->getStores())>1): ?>
35
+ <div class="form-language">
36
+ <!--<label for="select-language"><?php echo $this->__('Your Language:') ?></label>
37
+ <select id="select-language" title="<?php echo $this->__('Your Language') ?>" onchange="window.location.href=this.value">
38
+ <?php foreach ($this->getStores() as $_lang): ?>
39
+ <?php $_selected = ($_lang->getId() == $this->getCurrentStoreId()) ? ' selected="selected"' : '' ?>
40
+ <option value="<?php echo $_lang->getCurrentUrl() ?>"<?php echo $_selected ?>><?php echo $this->htmlEscape($_lang->getName()) ?></option>
41
+ <?php endforeach; ?>
42
+ </select>-->
43
+ <?php $count=0; foreach ($this->getStores() as $_lang): ?>
44
+ <?php $count++; ?>
45
+ <?php endforeach; ?>
46
+ <?php $i=0; foreach ($this->getStores() as $_lang): $i++; ?>
47
+ <a href="<?php echo $_lang->getCurrentUrl() ?>" class="<?php if($count == $i){ echo 'last';} ?>"><img src="<?php echo $this->getSkinUrl('images/shoe_store/'); ?>flag_<?php echo $this->htmlEscape($_lang->getCode()) ?>.jpg" alt="<?php echo $this->htmlEscape($_lang->getName()) ?>" /></a>
48
+ <?php endforeach; ?>
49
+ </div>
50
+ <?php endif; ?>
app/design/frontend/default/shoe_store/template/page/switch/languages.phtml~ ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Language switcher template
30
+ *
31
+ * @see Mage_Page_Block_Switch
32
+ */
33
+ ?>
34
+ <?php if(count($this->getStores())>1): ?>
35
+ <div class="form-language">
36
+ <!--<label for="select-language"><?php echo $this->__('Your Language:') ?></label>
37
+ <select id="select-language" title="<?php echo $this->__('Your Language') ?>" onchange="window.location.href=this.value">
38
+ <?php foreach ($this->getStores() as $_lang): ?>
39
+ <?php $_selected = ($_lang->getId() == $this->getCurrentStoreId()) ? ' selected="selected"' : '' ?>
40
+ <option value="<?php echo $_lang->getCurrentUrl() ?>"<?php echo $_selected ?>><?php echo $this->htmlEscape($_lang->getName()) ?></option>
41
+ <?php endforeach; ?>
42
+ </select>-->
43
+ <?php $count=0; foreach ($this->getStores() as $_lang): ?>
44
+ <?php $count++; ?>
45
+ <?php endforeach; ?>
46
+ <?php $i=0; foreach ($this->getStores() as $_lang): $i++; ?>
47
+ <a href="<?php echo $_lang->getCurrentUrl() ?>" class="<?php if($count == $i){ echo 'last';} ?>"><img src="<?php echo $this->getSkinUrl('images/electronics/'); ?>flag_<?php echo $this->htmlEscape($_lang->getCode()) ?>.jpg" alt="<?php echo $this->htmlEscape($_lang->getName()) ?>" /></a>
48
+ <?php endforeach; ?>
49
+ </div>
50
+ <?php endif; ?>
app/design/frontend/default/shoe_store/template/page/template/links.phtml ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * @see Mage_Page_Block_Template_Links
30
+ */
31
+ ?>
32
+ <?php $_links = $this->getLinks(); ?>
33
+ <?php if(count($_links)>0): ?>
34
+ <ul class="links"<?php if($this->getName()): ?> id="<?php echo $this->getName() ?>"<?php endif;?>>
35
+ <?php $i=0; foreach($_links as $_link): $i++;?>
36
+ <?php if ($_link instanceof Mage_Core_Block_Abstract):?>
37
+ <?php echo $_link->toHtml() ?>
38
+ <?php else: ?>
39
+ <li class="toplink<?php echo $i; ?> <?php if($_link->getIsFirst()||$_link->getIsLast()): ?><?php if($_link->getIsFirst()): ?>first<?php endif; ?><?php if($_link->getIsLast()): ?> last<?php endif; ?><?php endif; ?>" <?php echo $_link->getLiParams() ?>><?php echo $_link->getBeforeText() ?><a href="<?php echo $_link->getUrl() ?>" title="<?php echo $_link->getTitle() ?>" <?php echo $_link->getAParams() ?>><?php echo $_link->getLabel() ?></a><?php echo $_link->getAfterText() ?></li>
40
+ <?php endif;?>
41
+ <?php endforeach; ?>
42
+ </ul>
43
+ <?php endif; ?>
app/design/frontend/default/shoe_store/template/page/template/linksblock.phtml ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * @see Mage_Page_Block_Template_Links_Block
30
+ */
31
+ ?>
32
+ <li<?php if($this->getIsFirst()||$this->getIsLast()): ?> class="<?php if($this->getIsFirst()): ?>first<?php endif; ?><?php if($this->getIsLast()): ?> last<?php endif; ?>"<?php endif; ?> <?php echo $this->getLiParams() ?>><?php echo $this->getBeforeText() ?><a href="<?php echo $this->getLinkUrl() ?>" title="<?php echo $this->getTitle() ?>" <?php echo $this->getAParams() ?>><?php echo $this->getLabel() ?></a><?php echo $this->getAfterText() ?></li>
app/design/frontend/default/shoe_store/template/persistent/checkout/onepage/billing.phtml ADDED
@@ -0,0 +1,226 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ /** @var Mage_Checkout_Block_Onepage_Billing $this */
27
+ ?>
28
+ <form id="co-billing-form" action="">
29
+ <fieldset>
30
+ <ul class="form-list">
31
+ <?php if ($this->customerHasAddresses()): ?>
32
+ <li class="wide">
33
+ <label for="billing-address-select"><?php echo $this->__('Select a billing address from your address book or enter a new address.') ?></label>
34
+ <div class="input-box">
35
+ <?php echo $this->getAddressesHtmlSelect('billing') ?>
36
+ </div>
37
+ </li>
38
+ <?php endif; ?>
39
+ <li id="billing-new-address-form"<?php if ($this->customerHasAddresses()): ?> style="display:none;"<?php endif; ?>>
40
+ <fieldset>
41
+ <input type="hidden" name="billing[address_id]" value="<?php echo $this->getAddress()->getId() ?>" id="billing:address_id" />
42
+ <ul>
43
+ <li class="fields"><?php echo $this->getLayout()->createBlock('customer/widget_name')->setObject($this->getAddress()->getFirstname() ? $this->getAddress() : $this->getQuote()->getCustomer())->setForceUseCustomerRequiredAttributes(!$this->isCustomerLoggedIn())->setFieldIdFormat('billing:%s')->setFieldNameFormat('billing[%s]')->toHtml() ?></li>
44
+ <li class="fields">
45
+ <div class="field">
46
+ <label for="billing:company"><?php echo $this->__('Company') ?></label>
47
+ <div class="input-box">
48
+ <input type="text" id="billing:company" name="billing[company]" value="<?php echo $this->escapeHtml($this->getAddress()->getCompany()) ?>" title="<?php echo $this->__('Company') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('company') ?>" />
49
+ </div>
50
+ </div>
51
+ <?php if(!$this->isCustomerLoggedIn()): ?>
52
+ <div class="field">
53
+ <label for="billing:email" class="required"><em>*</em><?php echo $this->__('Email Address') ?></label>
54
+ <div class="input-box">
55
+ <input type="text" name="billing[email]" id="billing:email" value="<?php echo $this->escapeHtml($this->getAddress()->getEmail()) ?>" title="<?php echo $this->__('Email Address') ?>" class="input-text validate-email required-entry" />
56
+ </div>
57
+ </div>
58
+ <?php endif; ?>
59
+ </li>
60
+ <?php $_streetValidationClass = $this->helper('customer/address')->getAttributeValidationClass('street'); ?>
61
+ <li class="wide">
62
+ <label for="billing:street1" class="required"><em>*</em><?php echo $this->__('Address') ?></label>
63
+ <div class="input-box">
64
+ <input type="text" title="<?php echo $this->__('Street Address') ?>" name="billing[street][]" id="billing:street1" value="<?php echo $this->escapeHtml($this->getAddress()->getStreet(1)) ?>" class="input-text <?php echo $_streetValidationClass ?>" />
65
+ </div>
66
+ </li>
67
+ <?php $_streetValidationClass = trim(str_replace('required-entry', '', $_streetValidationClass)); ?>
68
+ <?php for ($_i = 2, $_n = $this->helper('customer/address')->getStreetLines(); $_i <= $_n; $_i++): ?>
69
+ <li class="wide">
70
+ <div class="input-box">
71
+ <input type="text" title="<?php echo $this->__('Street Address %s', $_i) ?>" name="billing[street][]" id="billing:street<?php echo $_i ?>" value="<?php echo $this->escapeHtml($this->getAddress()->getStreet($_i)) ?>" class="input-text <?php echo $_streetValidationClass ?>" />
72
+ </div>
73
+ </li>
74
+ <?php endfor; ?>
75
+ <?php if ($this->helper('customer/address')->isVatAttributeVisible()) : ?>
76
+ <li class="wide">
77
+ <label for="billing:vat_id"><?php echo $this->__('VAT Number') ?></label>
78
+ <div class="input-box">
79
+ <input type="text" id="billing:vat_id" name="billing[vat_id]" value="<?php echo $this->escapeHtml($this->getAddress()->getVatId()) ?>" title="<?php echo $this->__('VAT Number') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('vat_id') ?>" />
80
+ </div>
81
+ </li>
82
+ <?php endif; ?>
83
+ <li class="fields">
84
+ <div class="field">
85
+ <label for="billing:city" class="required"><em>*</em><?php echo $this->__('City') ?></label>
86
+ <div class="input-box">
87
+ <input type="text" title="<?php echo $this->__('City') ?>" name="billing[city]" value="<?php echo $this->escapeHtml($this->getAddress()->getCity()) ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('city') ?>" id="billing:city" />
88
+ </div>
89
+ </div>
90
+ <div class="field">
91
+ <label for="billing:region_id" class="required"><em>*</em><?php echo $this->__('State/Province') ?></label>
92
+ <div class="input-box">
93
+ <select id="billing:region_id" name="billing[region_id]" title="<?php echo $this->__('State/Province') ?>" class="validate-select" style="display:none;">
94
+ <option value=""><?php echo $this->__('Please select region, state or province') ?></option>
95
+ </select>
96
+ <script type="text/javascript">
97
+ //<![CDATA[
98
+ $('billing:region_id').setAttribute('defaultValue', "<?php echo $this->getAddress()->getRegionId() ?>");
99
+ //]]>
100
+ </script>
101
+ <input type="text" id="billing:region" name="billing[region]" value="<?php echo $this->escapeHtml($this->getAddress()->getRegion()) ?>" title="<?php echo $this->__('State/Province') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('region') ?>" style="display:none;" />
102
+ </div>
103
+ </div>
104
+ </li>
105
+ <li class="fields">
106
+ <div class="field">
107
+ <label for="billing:postcode" class="required"><em>*</em><?php echo $this->__('Zip/Postal Code') ?></label>
108
+ <div class="input-box">
109
+ <input type="text" title="<?php echo $this->__('Zip/Postal Code') ?>" name="billing[postcode]" id="billing:postcode" value="<?php echo $this->escapeHtml($this->getAddress()->getPostcode()) ?>" class="input-text validate-zip-international <?php echo $this->helper('customer/address')->getAttributeValidationClass('postcode') ?>" />
110
+ </div>
111
+ </div>
112
+ <div class="field">
113
+ <label for="billing:country_id" class="required"><em>*</em><?php echo $this->__('Country') ?></label>
114
+ <div class="input-box">
115
+ <?php echo $this->getCountryHtmlSelect('billing') ?>
116
+ </div>
117
+ </div>
118
+ </li>
119
+ <li class="fields">
120
+ <div class="field">
121
+ <label for="billing:telephone" class="required"><em>*</em><?php echo $this->__('Telephone') ?></label>
122
+ <div class="input-box">
123
+ <input type="text" name="billing[telephone]" value="<?php echo $this->escapeHtml($this->getAddress()->getTelephone()) ?>" title="<?php echo $this->__('Telephone') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('telephone') ?>" id="billing:telephone" />
124
+ </div>
125
+ </div>
126
+ <div class="field">
127
+ <label for="billing:fax"><?php echo $this->__('Fax') ?></label>
128
+ <div class="input-box">
129
+ <input type="text" name="billing[fax]" value="<?php echo $this->escapeHtml($this->getAddress()->getFax()) ?>" title="<?php echo $this->__('Fax') ?>" class="input-text <?php echo $this->helper('customer/address')->getAttributeValidationClass('fax') ?>" id="billing:fax" />
130
+ </div>
131
+ </div>
132
+ </li>
133
+ <?php if(!$this->isCustomerLoggedIn()): ?>
134
+
135
+ <?php $_dob = $this->getLayout()->createBlock('customer/widget_dob') ?>
136
+ <?php $_gender = $this->getLayout()->createBlock('customer/widget_gender') ?>
137
+ <?php if ($_dob->isEnabled() || $_gender->isEnabled()): ?>
138
+ <li class="fields">
139
+ <?php if ($_dob->isEnabled()): ?>
140
+ <div class="field">
141
+ <?php echo $_dob->setDate($this->getQuote()->getCustomerDob())->setFieldIdFormat('billing:%s')->setFieldNameFormat('billing[%s]')->toHtml() ?>
142
+ </div>
143
+ <?php endif; ?>
144
+ <?php if ($_gender->isEnabled()): ?>
145
+ <div class="field">
146
+ <?php echo $_gender->setGender($this->getQuote()->getCustomerGender())->setFieldIdFormat('billing:%s')->setFieldNameFormat('billing[%s]')->toHtml() ?>
147
+ </div>
148
+ <?php endif ?>
149
+ </li>
150
+ <?php endif ?>
151
+
152
+ <?php if ($this->isTaxvatEnabled()):?>
153
+ <li><?php echo $this->getTaxvatHtml() ?></li>
154
+ <?php endif; ?>
155
+
156
+ <li class="fields" id="register-customer-password">
157
+ <div class="field">
158
+ <label for="billing:customer_password" class="required"><em>*</em><?php echo $this->__('Password') ?></label>
159
+ <div class="input-box">
160
+ <input type="password" name="billing[customer_password]" id="billing:customer_password" title="<?php echo $this->__('Password') ?>" class="input-text required-entry validate-password" />
161
+ </div>
162
+ </div>
163
+ <div class="field">
164
+ <label for="billing:confirm_password" class="required"><em>*</em><?php echo $this->__('Confirm Password') ?></label>
165
+ <div class="input-box">
166
+ <input type="password" name="billing[confirm_password]" title="<?php echo $this->__('Confirm Password') ?>" id="billing:confirm_password" class="input-text required-entry validate-cpassword" />
167
+ </div>
168
+ </div>
169
+ </li>
170
+ <?php echo $this->getChildHtml('persistent.remember.me'); ?>
171
+ <?php endif; ?>
172
+ <?php if ($this->isCustomerLoggedIn() && $this->customerHasAddresses()):?>
173
+ <li class="control">
174
+ <input type="checkbox" name="billing[save_in_address_book]" value="1" title="<?php echo $this->__('Save in address book') ?>" id="billing:save_in_address_book" onchange="if(window.shipping) shipping.setSameAsBilling(false);"<?php if ($this->getAddress()->getSaveInAddressBook()):?> checked="checked"<?php endif;?> class="checkbox" /><label for="billing:save_in_address_book"><?php echo $this->__('Save in address book') ?></label>
175
+ </li>
176
+ <?php else:?>
177
+ <li class="no-display"><input type="hidden" name="billing[save_in_address_book]" value="1" /></li>
178
+ <?php endif; ?>
179
+ <?php echo $this->getChildHtml('form.additional.info'); ?>
180
+ </ul>
181
+ <?php echo $this->getChildHtml('persistent.remember.me.tooltip'); ?>
182
+ </fieldset>
183
+ </li>
184
+ <?php if ($this->canShip()): ?>
185
+ <li class="control">
186
+ <input type="radio" name="billing[use_for_shipping]" id="billing:use_for_shipping_yes" value="1"<?php if ($this->isUseBillingAddressForShipping()) {?> checked="checked"<?php }?> title="<?php echo $this->__('Ship to this address') ?>" onclick="$('shipping:same_as_billing').checked = true;" class="radio" /><label for="billing:use_for_shipping_yes"><?php echo $this->__('Ship to this address') ?></label></li>
187
+ <li class="control">
188
+ <input type="radio" name="billing[use_for_shipping]" id="billing:use_for_shipping_no" value="0"<?php if (!$this->isUseBillingAddressForShipping()) {?> checked="checked"<?php }?> title="<?php echo $this->__('Ship to different address') ?>" onclick="$('shipping:same_as_billing').checked = false;" class="radio" /><label for="billing:use_for_shipping_no"><?php echo $this->__('Ship to different address') ?></label>
189
+ </li>
190
+ <?php endif; ?>
191
+ </ul>
192
+ <?php if (!$this->canShip()): ?>
193
+ <input type="hidden" name="billing[use_for_shipping]" value="1" />
194
+ <?php endif; ?>
195
+ <div class="buttons-set" id="billing-buttons-container">
196
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
197
+ <button type="button" title="<?php echo $this->__('Continue') ?>" class="button" onclick="billing.save()"><span><span><?php echo $this->__('Continue') ?></span></span></button>
198
+ <span class="please-wait" id="billing-please-wait" style="display:none;">
199
+ <img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" alt="<?php echo $this->__('Loading next step...') ?>" title="<?php echo $this->__('Loading next step...') ?>" class="v-middle" /> <?php echo $this->__('Loading next step...') ?>
200
+ </span>
201
+ </div>
202
+ </fieldset>
203
+ </form>
204
+ <script type="text/javascript">
205
+ //<![CDATA[
206
+ var billing = new Billing('co-billing-form', '<?php echo $this->getUrl('checkout/onepage/getAddress') ?>address/', '<?php echo $this->getUrl('checkout/onepage/saveBilling') ?>');
207
+ var billingForm = new VarienForm('co-billing-form');
208
+
209
+ //billingForm.setElementsRelation('billing:country_id', 'billing:region', '<?php echo $this->getUrl('directory/json/childRegion') ?>', '<?php echo $this->__('Select State/Province...') ?>');
210
+ $('billing-address-select') && billing.newAddress(!$('billing-address-select').value);
211
+
212
+ var billingRegionUpdater = new RegionUpdater('billing:country_id', 'billing:region', 'billing:region_id', <?php echo $this->helper('directory')->getRegionJson() ?>, undefined, 'billing:postcode');
213
+ if ($('onepage-guest-register-button')) {
214
+ Event.observe($('onepage-guest-register-button'), 'click', function(event) {
215
+ var billingRememberMe = $('co-billing-form').select('#remember-me-box');
216
+ if (billingRememberMe.length > 0) {
217
+ if ($('login:guest') && $('login:guest').checked) {
218
+ billingRememberMe[0].hide();
219
+ } else if ($('login:register') && ($('login:register').checked || $('login:register').type == 'hidden')) {
220
+ billingRememberMe[0].show();
221
+ }
222
+ }
223
+ });
224
+ }
225
+ //]]>
226
+ </script>
app/design/frontend/default/shoe_store/template/persistent/checkout/onepage/login.phtml ADDED
@@ -0,0 +1,157 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Customer onepage checkout login form template
30
+ *
31
+ * @see app/design/frontend/base/default/template/checkout/onepage/login.phtml
32
+ */
33
+ /** @var $this Mage_Checkout_Block_Onepage_Login */
34
+ ?>
35
+ <div class="col2-set row-fluid">
36
+ <?php echo $this->getChildHtml('login_before')?>
37
+ <div class="col-1 span6">
38
+ <h3><?php if( $this->getQuote()->isAllowedGuestCheckout() ): ?><?php echo $this->__('Checkout as a Guest or Register') ?><?php else: ?><?php echo $this->__('Register to Create an Account') ?><?php endif; ?></h3>
39
+ <?php if( $this->getQuote()->isAllowedGuestCheckout() ): ?>
40
+ <p><?php echo $this->__('Register with us for future convenience:') ?></p>
41
+ <?php else: ?>
42
+ <p><strong><?php echo $this->__('Register and save time!') ?></strong><br />
43
+ <?php echo $this->__('Register with us for future convenience:') ?></p>
44
+ <ul>
45
+ <li><?php echo $this->__('Fast and easy check out') ?></li>
46
+ <li><?php echo $this->__('Easy access to your order history and status') ?></li>
47
+ </ul>
48
+ <?php endif; ?>
49
+ <?php if( $this->getQuote()->isAllowedGuestCheckout() ): ?>
50
+ <ul class="form-list">
51
+ <?php if( $this->getQuote()->isAllowedGuestCheckout() ): ?>
52
+ <li class="control">
53
+ <input type="radio" name="checkout_method" id="login:guest" value="guest"<?php if($this->getQuote()->getCheckoutMethod()==Mage_Checkout_Model_Type_Onepage::METHOD_GUEST): ?> checked="checked"<?php endif; ?> class="radio" /><label for="login:guest"><?php echo $this->__('Checkout as Guest') ?></label>
54
+ </li>
55
+ <?php endif; ?>
56
+ <li class="control">
57
+ <input type="radio" name="checkout_method" id="login:register" value="register"<?php if($this->getQuote()->getCheckoutMethod()==Mage_Checkout_Model_Type_Onepage::METHOD_REGISTER || !$this->getQuote()->isAllowedGuestCheckout()): ?> checked="checked"<?php endif ?> class="radio" /><label for="login:register"><?php echo $this->__('Register') ?></label>
58
+ </li>
59
+ </ul>
60
+ <h4><?php echo $this->__('Register and save time!') ?></h4>
61
+ <p><?php echo $this->__('Register with us for future convenience:') ?></p>
62
+ <ul class="ul">
63
+ <li><?php echo $this->__('Fast and easy check out') ?></li>
64
+ <li><?php echo $this->__('Easy access to your order history and status') ?></li>
65
+ </ul>
66
+ <?php else: ?>
67
+ <input type="hidden" name="checkout_method" id="login:register" value="register" checked="checked" />
68
+ <?php endif; ?>
69
+
70
+ <div class="buttons-set">
71
+ <p class="required">&nbsp;</p>
72
+ <?php if ($this->getQuote()->isAllowedGuestCheckout()): ?>
73
+ <button id="onepage-guest-register-button" type="button" class="button" onclick="checkout.setMethod();"><span><span><?php echo $this->__('Continue') ?></span></span></button>
74
+ <?php elseif ($this->helper('checkout')->isCustomerMustBeLogged()): ?>
75
+ <button id="onepage-guest-register-button" type="button" class="button" onclick="window.location='<?php echo $this->helper('checkout/url')->getRegistrationUrl();?>'"><span><span><?php echo $this->__('Register') ?></span></span></button>
76
+ <?php else: ?>
77
+ <form action="<?php echo $this->getUrl('persistent/index/saveMethod'); ?>">
78
+ <button id="onepage-guest-register-button" type="submit" class="button"><span><span><?php echo $this->__('Register') ?></span></span></button>
79
+ </form>
80
+ <?php endif; ?>
81
+ </div>
82
+ </div>
83
+ <div class="col-2 span6">
84
+ <h3><?php echo $this->__('Login') ?></h3>
85
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
86
+ <form id="login-form" action="<?php echo $this->getPostAction() ?>" method="post">
87
+ <fieldset>
88
+ <h4><?php echo $this->__('Already registered?') ?></h4>
89
+ <p><?php echo $this->__('Please log in below:') ?></p>
90
+ <ul class="form-list">
91
+ <li>
92
+ <label for="login-email" class="required"><em>*</em><?php echo $this->__('Email Address') ?></label>
93
+ <div class="input-box">
94
+ <input type="text" class="input-text required-entry validate-email" id="login-email" name="login[username]" value="<?php echo $this->htmlEscape($this->getUsername()) ?>" />
95
+ </div>
96
+ </li>
97
+ <li>
98
+ <label for="login-password" class="required"><em>*</em><?php echo $this->__('Password') ?></label>
99
+ <div class="input-box">
100
+ <input type="password" class="input-text required-entry" id="login-password" name="login[password]" />
101
+ </div>
102
+ </li>
103
+ <?php echo $this->getChildHtml('form.additional.info'); ?>
104
+ <?php echo $this->getChildHtml('persistent.remember.me'); ?>
105
+ </ul>
106
+ <input name="context" type="hidden" value="checkout" />
107
+ </fieldset>
108
+ </form>
109
+ <div class="buttons-set">
110
+ <p class="required"><?php echo $this->__('* Required Fields') ?></p>
111
+ <a href="<?php echo $this->getUrl('customer/account/forgotpassword') ?>" class="f-left"><?php echo $this->__('Forgot your password?') ?></a>
112
+ <button type="submit" class="button" onclick="onepageLogin(this)"><span><span><?php echo $this->__('Login') ?></span></span></button>
113
+ </div>
114
+ </div>
115
+ </div>
116
+ <div class="col2-set">
117
+ <div class="col-1">
118
+
119
+ </div>
120
+ <div class="col-2">
121
+
122
+ </div>
123
+ </div>
124
+ <script type="text/javascript">
125
+ //<![CDATA[
126
+ var loginForm = new VarienForm('login-form', true);
127
+ $('login-email').observe('keypress', bindLoginPost);
128
+ $('login-password').observe('keypress', bindLoginPost);
129
+ function bindLoginPost(evt){
130
+ if (evt.keyCode == Event.KEY_RETURN) {
131
+ loginForm.submit();
132
+ }
133
+ }
134
+ function onepageLogin(button)
135
+ {
136
+ if(loginForm.validator && loginForm.validator.validate()){
137
+ button.disabled = true;
138
+ loginForm.submit();
139
+ }
140
+ }
141
+ //]]>
142
+ </script>
143
+ <?php
144
+ $registerParam = $this->getRequest()->getParam('register');
145
+ if ($registerParam || $registerParam === ''):
146
+ ?>
147
+ <script type="text/javascript">
148
+ //<![CDATA[
149
+ document.observe("dom:loaded", function() {
150
+ if($('login:register')) {
151
+ $('login:register').checked = true;
152
+ checkout.setMethod();
153
+ }
154
+ })
155
+ //]]>
156
+ </script>
157
+ <?php endif; ?>
app/design/frontend/default/shoe_store/template/persistent/customer/form/login.phtml ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php
28
+ /**
29
+ * Customer login form template
30
+ *
31
+ * @see app/design/frontend/base/default/template/customer/form/login.phtml
32
+ */
33
+ /** @var $this Mage_Customer_Block_Form_Login */
34
+ ?>
35
+ <div class="account-login span4">
36
+
37
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
38
+ <form action="<?php echo $this->getPostActionUrl() ?>" method="post" id="login-form">
39
+ <div class="col2-set">
40
+
41
+ <div class="login_box">
42
+ <div class="content">
43
+ <h2><?php echo $this->__('Customers Login') ?></h2>
44
+ <p><?php echo $this->__('If you have an account with us, please log in.') ?></p>
45
+ <ul class="form-list">
46
+ <li>
47
+ <label for="email" class="required"><em>*</em><?php echo $this->__('Email Address') ?></label>
48
+ <div class="input-box">
49
+ <input type="text" name="login[username]" value="<?php echo $this->htmlEscape($this->getUsername()) ?>" id="email" class="input-text required-entry validate-email" title="<?php echo $this->__('Email Address') ?>" />
50
+ </div>
51
+ </li>
52
+ <li>
53
+ <label for="pass" class="required"><em>*</em><?php echo $this->__('Password') ?></label>
54
+ <div class="input-box">
55
+ <input type="password" name="login[password]" class="input-text required-entry validate-password" id="pass" title="<?php echo $this->__('Password') ?>" />
56
+ </div>
57
+ </li>
58
+ <?php echo $this->getChildHtml('form.additional.info'); ?>
59
+ <?php echo $this->getChildHtml('persistent.remember.me'); ?>
60
+ </ul>
61
+ <?php echo $this->getChildHtml('persistent.remember.me.tooltip'); ?>
62
+ <p class="required right"><?php echo $this->__('* Required Fields') ?></p>
63
+ <p class="left"><a href="<?php echo $this->getForgotPasswordUrl() ?>" class="f-left"><?php echo $this->__('Forgot Your Password?') ?></a></p>
64
+ <div class="login-buttons-set">
65
+ <button type="button" title="<?php echo $this->__('Create an Account') ?>" class="button right" onclick="window.location='<?php echo Mage::helper('persistent')->getCreateAccountUrl($this->getCreateAccountUrl()) ?>';"><span><span><?php echo $this->__('Create an Account') ?></span></span></button>
66
+ <button type="submit" class="button left" title="<?php echo $this->__('Login') ?>" name="send" id="send2"><span><span><?php echo $this->__('Login') ?></span></span></button>
67
+ </div>
68
+
69
+ </div>
70
+ </div>
71
+ </div>
72
+
73
+ <?php if (Mage::helper('checkout')->isContextCheckout()): ?>
74
+ <input name="context" type="hidden" value="checkout" />
75
+ <?php endif; ?>
76
+ </form>
77
+ <script type="text/javascript">
78
+ //<![CDATA[
79
+ var dataForm = new VarienForm('login-form', true);
80
+ //]]>
81
+ </script>
82
+ </div>
app/design/frontend/default/shoe_store/template/sales/order/history.phtml ADDED
@@ -0,0 +1,78 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
28
+ <?php $_orders = $this->getOrders(); ?>
29
+ <div class="page-title">
30
+ <h1><?php echo $this->__('My Orders') ?></h1>
31
+ </div>
32
+ <?php echo $this->getPagerHtml(); ?>
33
+ <?php if($_orders->getSize()): ?>
34
+ <div class="responsive_table">
35
+ <table class="data-table" id="my-orders-table">
36
+ <col width="1" />
37
+ <col width="1" />
38
+ <col />
39
+ <col width="1" />
40
+ <col width="1" />
41
+ <col width="1" />
42
+ <thead>
43
+ <tr>
44
+ <th><?php echo $this->__('Order #') ?></th>
45
+ <th><?php echo $this->__('Date') ?></th>
46
+ <th><?php echo $this->__('Ship To') ?></th>
47
+ <th><span class="nobr"><?php echo $this->__('Order Total') ?></span></th>
48
+ <th><span class="nobr"><?php echo $this->__('Order Status') ?></span></th>
49
+ <th>&nbsp;</th>
50
+ </tr>
51
+ </thead>
52
+ <tbody>
53
+ <?php $_odd = ''; ?>
54
+ <?php foreach ($_orders as $_order): ?>
55
+ <tr>
56
+ <td><?php echo $_order->getRealOrderId() ?></td>
57
+ <td><span class="nobr"><?php echo $this->formatDate($_order->getCreatedAtStoreDate()) ?></span></td>
58
+ <td><?php echo $_order->getShippingAddress() ? $this->htmlEscape($_order->getShippingAddress()->getName()) : '&nbsp;' ?></td>
59
+ <td><?php echo $_order->formatPrice($_order->getGrandTotal()) ?></td>
60
+ <td><em><?php echo $_order->getStatusLabel() ?></em></td>
61
+ <td class="a-center">
62
+ <span class="nobr"><a href="<?php echo $this->getViewUrl($_order) ?>"><?php echo $this->__('View Order') ?></a>
63
+ <?php /*<span class="separator">|</span><a href="<?php echo $this->getTrackUrl($_order) ?>"><?php echo $this->__('Track Order') ?></a>&nbsp;*/ ?>
64
+ <?php if ($this->helper('sales/reorder')->canReorder($_order)) : ?>
65
+ <span class="separator">|</span> <a href="<?php echo $this->getReorderUrl($_order) ?>" class="link-reorder"><?php echo $this->__('Reorder') ?></a>
66
+ <?php endif ?>
67
+ </span>
68
+ </td>
69
+ </tr>
70
+ <?php endforeach; ?>
71
+ </tbody>
72
+ </table>
73
+ </div>
74
+ <script type="text/javascript">decorateTable('my-orders-table');</script>
75
+ <?php echo $this->getPagerHtml(); ?>
76
+ <?php else: ?>
77
+ <p><?php echo $this->__('You have placed no orders.'); ?></p>
78
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/sales/order/history.phtml~ ADDED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
28
+ <?php $_orders = $this->getOrders(); ?>
29
+ <div class="page-title">
30
+ <h1><?php echo $this->__('My Orders') ?></h1>
31
+ </div>
32
+ <?php echo $this->getPagerHtml(); ?>
33
+ <?php if($_orders->getSize()): ?>
34
+ <table class="data-table" id="my-orders-table">
35
+ <col width="1" />
36
+ <col width="1" />
37
+ <col />
38
+ <col width="1" />
39
+ <col width="1" />
40
+ <col width="1" />
41
+ <thead>
42
+ <tr>
43
+ <th><?php echo $this->__('Order #') ?></th>
44
+ <th><?php echo $this->__('Date') ?></th>
45
+ <th><?php echo $this->__('Ship To') ?></th>
46
+ <th><span class="nobr"><?php echo $this->__('Order Total') ?></span></th>
47
+ <th><span class="nobr"><?php echo $this->__('Order Status') ?></span></th>
48
+ <th>&nbsp;</th>
49
+ </tr>
50
+ </thead>
51
+ <tbody>
52
+ <?php $_odd = ''; ?>
53
+ <?php foreach ($_orders as $_order): ?>
54
+ <tr>
55
+ <td><?php echo $_order->getRealOrderId() ?></td>
56
+ <td><span class="nobr"><?php echo $this->formatDate($_order->getCreatedAtStoreDate()) ?></span></td>
57
+ <td><?php echo $_order->getShippingAddress() ? $this->htmlEscape($_order->getShippingAddress()->getName()) : '&nbsp;' ?></td>
58
+ <td><?php echo $_order->formatPrice($_order->getGrandTotal()) ?></td>
59
+ <td><em><?php echo $_order->getStatusLabel() ?></em></td>
60
+ <td class="a-center">
61
+ <span class="nobr"><a href="<?php echo $this->getViewUrl($_order) ?>"><?php echo $this->__('View Order') ?></a>
62
+ <?php /*<span class="separator">|</span><a href="<?php echo $this->getTrackUrl($_order) ?>"><?php echo $this->__('Track Order') ?></a>&nbsp;*/ ?>
63
+ <?php if ($this->helper('sales/reorder')->canReorder($_order)) : ?>
64
+ <span class="separator">|</span> <a href="<?php echo $this->getReorderUrl($_order) ?>" class="link-reorder"><?php echo $this->__('Reorder') ?></a>
65
+ <?php endif ?>
66
+ </span>
67
+ </td>
68
+ </tr>
69
+ <?php endforeach; ?>
70
+ </tbody>
71
+ </table>
72
+ <script type="text/javascript">decorateTable('my-orders-table');</script>
73
+ <?php echo $this->getPagerHtml(); ?>
74
+ <?php else: ?>
75
+ <p><?php echo $this->__('You have placed no orders.'); ?></p>
76
+ <?php endif ?>
app/design/frontend/default/shoe_store/template/sales/order/info.phtml ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php /** @var $this Mage_Sales_Block_Order_Info */ ?>
28
+ <?php $_order = $this->getOrder() ?>
29
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
30
+ <div class="page-title title-buttons">
31
+ <h1><?php echo $this->__('Order #%s - %s', $_order->getRealOrderId(), $_order->getStatusLabel()) ?></h1>
32
+ <?php echo $this->getChildHtml('buttons') ?>
33
+ </div>
34
+ <?php echo $this->getStatusHistoryRssUrl($_order) ?>
35
+ <dl class="order-info">
36
+ <dt><?php echo $this->__('About This Order:') ?></dt>
37
+ <dd>
38
+ <?php $_links = $this->getLinks(); ?>
39
+ <ul id="order-info-tabs">
40
+ <?php foreach ($_links as $_link): ?>
41
+ <?php if($_link->getUrl()): ?>
42
+ <li><a href="<?php echo $_link->getUrl() ?>"><?php echo $_link->getLabel() ?></a></li>
43
+ <?php else: ?>
44
+ <li class="current"><?php echo $_link->getLabel() ?></li>
45
+ <?php endif; ?>
46
+ <?php endforeach; ?>
47
+ </ul>
48
+ <script type="text/javascript">decorateGeneric($('order-info-tabs').select('LI'),['first','last']);</script>
49
+ </dd>
50
+ </dl>
51
+ <p class="order-date"><?php echo $this->__('Order Date: %s', $this->formatDate($_order->getCreatedAtStoreDate(), 'long')) ?></p>
52
+ <?php if (!$_order->getIsVirtual()): ?>
53
+ <div class="col2-set order-info-box">
54
+ <div class="span6">
55
+ <div class="box">
56
+ <div class="box-title">
57
+ <h2><?php echo $this->__('Shipping Address') ?></h2>
58
+ </div>
59
+ <div class="box-content">
60
+ <address><?php echo $_order->getShippingAddress()->format('html') ?></address>
61
+ </div>
62
+ </div>
63
+ </div>
64
+ <div class="span6">
65
+ <div class="box">
66
+ <div class="box-title">
67
+ <h2><?php echo $this->__('Shipping Method') ?></h2>
68
+ </div>
69
+ <div class="box-content">
70
+ <?php if ($_order->getShippingDescription()): ?>
71
+ <?php echo $this->escapeHtml($_order->getShippingDescription()) ?>
72
+ <?php else: ?>
73
+ <p><?php echo $this->helper('sales')->__('No shipping information available'); ?></p>
74
+ <?php endif; ?>
75
+ </div>
76
+ </div>
77
+ </div>
78
+ </div>
79
+ <?php endif; ?>
80
+ <div class="col2-set order-info-box">
81
+ <div class="col-1">
82
+ <div class="box">
83
+ <div class="box-title">
84
+ <h2><?php echo $this->__('Billing Address') ?></h2>
85
+ </div>
86
+ <div class="box-content">
87
+ <address><?php echo $_order->getBillingAddress()->format('html') ?></address>
88
+ </div>
89
+ </div>
90
+ </div>
91
+ <div class="col-2">
92
+ <div class="box box-payment">
93
+ <div class="box-title">
94
+ <h2><?php echo $this->__('Payment Method') ?></h2>
95
+ </div>
96
+ <div class="box-content">
97
+ <?php echo $this->getPaymentInfoHtml() ?>
98
+ </div>
99
+ </div>
100
+ </div>
101
+ </div>
app/design/frontend/default/shoe_store/template/sales/order/info.phtml~ ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <?php /** @var $this Mage_Sales_Block_Order_Info */ ?>
28
+ <?php $_order = $this->getOrder() ?>
29
+ <?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
30
+ <div class="page-title title-buttons">
31
+ <h1><?php echo $this->__('Order #%s - %s', $_order->getRealOrderId(), $_order->getStatusLabel()) ?></h1>
32
+ <?php echo $this->getChildHtml('buttons') ?>
33
+ </div>
34
+ <?php echo $this->getStatusHistoryRssUrl($_order) ?>
35
+ <dl class="order-info">
36
+ <dt><?php echo $this->__('About This Order:') ?></dt>
37
+ <dd>
38
+ <?php $_links = $this->getLinks(); ?>
39
+ <ul id="order-info-tabs">
40
+ <?php foreach ($_links as $_link): ?>
41
+ <?php if($_link->getUrl()): ?>
42
+ <li><a href="<?php echo $_link->getUrl() ?>"><?php echo $_link->getLabel() ?></a></li>
43
+ <?php else: ?>
44
+ <li class="current"><?php echo $_link->getLabel() ?></li>
45
+ <?php endif; ?>
46
+ <?php endforeach; ?>
47
+ </ul>
48
+ <script type="text/javascript">decorateGeneric($('order-info-tabs').select('LI'),['first','last']);</script>
49
+ </dd>
50
+ </dl>
51
+ <p class="order-date"><?php echo $this->__('Order Date: %s', $this->formatDate($_order->getCreatedAtStoreDate(), 'long')) ?></p>
52
+ <?php if (!$_order->getIsVirtual()): ?>
53
+ <div class="col2-set order-info-box">
54
+ <div class="col-1">
55
+ <div class="box">
56
+ <div class="box-title">
57
+ <h2><?php echo $this->__('Shipping Address') ?></h2>
58
+ </div>
59
+ <div class="box-content">
60
+ <address><?php echo $_order->getShippingAddress()->format('html') ?></address>
61
+ </div>
62
+ </div>
63
+ </div>
64
+ <div class="col-2">
65
+ <div class="box">
66
+ <div class="box-title">
67
+ <h2><?php echo $this->__('Shipping Method') ?></h2>
68
+ </div>
69
+ <div class="box-content">
70
+ <?php if ($_order->getShippingDescription()): ?>
71
+ <?php echo $this->escapeHtml($_order->getShippingDescription()) ?>
72
+ <?php else: ?>
73
+ <p><?php echo $this->helper('sales')->__('No shipping information available'); ?></p>
74
+ <?php endif; ?>
75
+ </div>
76
+ </div>
77
+ </div>
78
+ </div>
79
+ <?php endif; ?>
80
+ <div class="col2-set order-info-box">
81
+ <div class="col-1">
82
+ <div class="box">
83
+ <div class="box-title">
84
+ <h2><?php echo $this->__('Billing Address') ?></h2>
85
+ </div>
86
+ <div class="box-content">
87
+ <address><?php echo $_order->getBillingAddress()->format('html') ?></address>
88
+ </div>
89
+ </div>
90
+ </div>
91
+ <div class="col-2">
92
+ <div class="box box-payment">
93
+ <div class="box-title">
94
+ <h2><?php echo $this->__('Payment Method') ?></h2>
95
+ </div>
96
+ <div class="box-content">
97
+ <?php echo $this->getPaymentInfoHtml() ?>
98
+ </div>
99
+ </div>
100
+ </div>
101
+ </div>
app/design/frontend/default/shoe_store/template/sales/order/recent.phtml ADDED
@@ -0,0 +1,77 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="box-account box-recent">
28
+ <?php $_orders = $this->getOrders(); ?>
29
+ <div class="box-head">
30
+ <h2><?php echo $this->__('Recent Orders') ?></h2>
31
+ <?php if( sizeof($_orders->getItems()) > 0 ): ?><a href="<?php echo $this->getUrl('sales/order/history') ?>"><?php echo $this->__('View All') ?></a><?php endif; ?>
32
+ </div>
33
+ <?php if( sizeof($_orders->getItems()) > 0 ): ?>
34
+ <div class="responsive_table">
35
+ <table class="data-table" id="my-orders-table">
36
+ <col width="1" />
37
+ <col width="1" />
38
+ <col />
39
+ <col width="1" />
40
+ <col width="1" />
41
+ <col width="1" />
42
+ <thead>
43
+ <tr>
44
+ <th><?php echo $this->__('Order #') ?></th>
45
+ <th><?php echo $this->__('Date') ?></th>
46
+ <th><?php echo $this->__('Ship To') ?></th>
47
+ <th><span class="nobr"><?php echo $this->__('Order Total') ?></span></th>
48
+ <th><?php echo $this->__('Status') ?></th>
49
+ <th>&nbsp;</th>
50
+ </tr>
51
+ </thead>
52
+ <tbody>
53
+ <?php foreach ($_orders as $_order): ?>
54
+ <tr>
55
+ <td><?php echo $_order->getRealOrderId() ?></td>
56
+ <td><span class="nobr"><?php echo $this->formatDate($_order->getCreatedAtStoreDate()) ?></span></td>
57
+ <td><?php echo $_order->getShippingAddress() ? $this->htmlEscape($_order->getShippingAddress()->getName()) : '&nbsp;' ?></td>
58
+ <td><?php echo $_order->formatPrice($_order->getGrandTotal()) ?></td>
59
+ <td><em><?php echo $_order->getStatusLabel() ?></em></td>
60
+ <td class="a-center">
61
+ <span class="nobr">
62
+ <a href="<?php echo $this->getViewUrl($_order) ?>"><?php echo $this->__('View Order') ?></a>
63
+ <?php if ($this->helper('sales/reorder')->canReorder($_order)) : ?>
64
+ <span class="separator">|</span> <a href="<?php echo $this->getReorderUrl($_order) ?>" class="link-reorder"><?php echo $this->__('Reorder') ?></a>
65
+ <?php endif ?>
66
+ </span>
67
+ </td>
68
+ </tr>
69
+ <?php endforeach; ?>
70
+ </tbody>
71
+ </table>
72
+ </div>
73
+ <script type="text/javascript">decorateTable('my-orders-table')</script>
74
+ <?php else: ?>
75
+ <p><?php echo $this->__('You have placed no orders.'); ?></p>
76
+ <?php endif; ?>
77
+ </div>
app/design/frontend/default/shoe_store/template/sales/order/recent.phtml~ ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="box-account box-recent">
28
+ <?php $_orders = $this->getOrders(); ?>
29
+ <div class="box-head">
30
+ <h2><?php echo $this->__('Recent Orders') ?></h2>
31
+ <?php if( sizeof($_orders->getItems()) > 0 ): ?><a href="<?php echo $this->getUrl('sales/order/history') ?>"><?php echo $this->__('View All') ?></a><?php endif; ?>
32
+ </div>
33
+ <?php if( sizeof($_orders->getItems()) > 0 ): ?>
34
+ <table class="data-table" id="my-orders-table">
35
+ <col width="1" />
36
+ <col width="1" />
37
+ <col />
38
+ <col width="1" />
39
+ <col width="1" />
40
+ <col width="1" />
41
+ <thead>
42
+ <tr>
43
+ <th><?php echo $this->__('Order #') ?></th>
44
+ <th><?php echo $this->__('Date') ?></th>
45
+ <th><?php echo $this->__('Ship To') ?></th>
46
+ <th><span class="nobr"><?php echo $this->__('Order Total') ?></span></th>
47
+ <th><?php echo $this->__('Status') ?></th>
48
+ <th>&nbsp;</th>
49
+ </tr>
50
+ </thead>
51
+ <tbody>
52
+ <?php foreach ($_orders as $_order): ?>
53
+ <tr>
54
+ <td><?php echo $_order->getRealOrderId() ?></td>
55
+ <td><span class="nobr"><?php echo $this->formatDate($_order->getCreatedAtStoreDate()) ?></span></td>
56
+ <td><?php echo $_order->getShippingAddress() ? $this->htmlEscape($_order->getShippingAddress()->getName()) : '&nbsp;' ?></td>
57
+ <td><?php echo $_order->formatPrice($_order->getGrandTotal()) ?></td>
58
+ <td><em><?php echo $_order->getStatusLabel() ?></em></td>
59
+ <td class="a-center">
60
+ <span class="nobr">
61
+ <a href="<?php echo $this->getViewUrl($_order) ?>"><?php echo $this->__('View Order') ?></a>
62
+ <?php if ($this->helper('sales/reorder')->canReorder($_order)) : ?>
63
+ <span class="separator">|</span> <a href="<?php echo $this->getReorderUrl($_order) ?>" class="link-reorder"><?php echo $this->__('Reorder') ?></a>
64
+ <?php endif ?>
65
+ </span>
66
+ </td>
67
+ </tr>
68
+ <?php endforeach; ?>
69
+ </tbody>
70
+ </table>
71
+ <script type="text/javascript">decorateTable('my-orders-table')</script>
72
+ <?php else: ?>
73
+ <p><?php echo $this->__('You have placed no orders.'); ?></p>
74
+ <?php endif; ?>
75
+ </div>
app/design/frontend/default/shoe_store/template/tag/popular.phtml ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+ ?>
27
+ <div class="block block-tags">
28
+ <div class="block-title">
29
+ <strong><span><?php echo $this->__('Popular Tags'); ?></span></strong>
30
+ </div>
31
+ <div class="block-content">
32
+ <ul class="tags-list">
33
+ <?php foreach ($this->getTags() as $_tag): ?>
34
+ <li><a href="<?php echo $_tag->getTaggedProductsUrl() ?>" style="font-size:<?php echo $_tag->getRatio()*70+75 ?>%;"><?php echo $this->htmlEscape($_tag->getName()) ?></a></li>
35
+ <?php endforeach; ?>
36
+ </ul>
37
+ <div class="actions">
38
+ <a href="<?php echo $this->getUrl('tag/list') ?>"><?php echo $this->__('View All Tags') ?></a>
39
+ </div>
40
+ </div>
41
+ <div class="tag_image"></div>
42
+ </div>
app/design/frontend/default/shoe_store/template/wishlist/item/column/info.phtml ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Magento
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0)
8
+ * that is bundled with this package in the file LICENSE_AFL.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/afl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category design
22
+ * @package base_default
23
+ * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
25
+ */
26
+
27
+ /* @var Mage_Wishlist_Model_Item $item */
28
+ $item = $this->getItem();
29
+ $product = $item->getProduct();
30
+ ?>
31
+ <h3 class="product-name"><a href="<?php echo $this->getProductUrl($item) ?>" title="<?php echo $this->escapeHtml($product->getName()) ?>"><?php echo $this->escapeHtml($product->getName()) ?></a></h3>
32
+ <div class="description std"><div class="inner"><?php echo $this->escapeHtml($this->stripTags($product->getShortDescription()));?></div></div>
33
+ <textarea name="description[<?php echo $item->getWishlistItemId() ?>]" rows="3" cols="5" onfocus="if(this.value=='Please, enter your comments...') this.value='';" onblur="if(this.value == '') this.value='Please, enter your comments...';" title="<?php echo $this->__('Comment') ?>"><?php echo 'Please, enter your comments...' ?></textarea>
34
+ <?php if($this->getSortedChildren()): ?>
35
+ <div class="item-manage">
36
+ <?php foreach($this->getSortedChildren() as $childName):?>
37
+ <?php echo $this->getChildHtml($childName, false);?>
38
+ <?php endforeach;?>
39
+ </div>
40
+ <?php endif; ?>
app/etc/modules/Magic_Catalog.xml ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <Magic_Catalog>
5
+ <active>true</active>
6
+ <codePool>community</codePool>
7
+ </Magic_Catalog>
8
+ </modules>
9
+ </config>
app/etc/modules/TM_EasyTabs.xml ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <TM_EasyTabs>
5
+ <active>true</active>
6
+ <codePool>community</codePool>
7
+ <tm_link><![CDATA[http://templates-master.com/magento-extensions/magento-easy-tabs.html]]></tm_link>
8
+ <depends>
9
+ <Mage_Catalog />
10
+ </depends>
11
+ </TM_EasyTabs>
12
+ </modules>
13
+ </config>
app/etc/modules/VS_Bestseller.xml ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <VS_Bestseller>
5
+ <active>true</active>
6
+ <codePool>community</codePool>
7
+ </VS_Bestseller>
8
+ </modules>
9
+ </config>
js/bootstrap/application.js ADDED
@@ -0,0 +1,154 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // NOTICE!! DO NOT USE ANY OF THIS JAVASCRIPT
2
+ // IT'S ALL JUST JUNK FOR OUR DOCS!
3
+ // ++++++++++++++++++++++++++++++++++++++++++
4
+
5
+ !function ($) {
6
+
7
+ $(function(){
8
+
9
+ var $window = $(window)
10
+
11
+ // Disable certain links in docs
12
+ $('section [href^=#]').click(function (e) {
13
+ e.preventDefault()
14
+ })
15
+
16
+ // side bar
17
+ $('.bs-docs-sidenav').affix({
18
+ offset: {
19
+ top: function () { return $window.width() <= 980 ? 290 : 210 }
20
+ , bottom: 270
21
+ }
22
+ })
23
+
24
+ // make code pretty
25
+ window.prettyPrint && prettyPrint()
26
+
27
+ // add-ons
28
+ $('.add-on :checkbox').on('click', function () {
29
+ var $this = $(this)
30
+ , method = $this.attr('checked') ? 'addClass' : 'removeClass'
31
+ $(this).parents('.add-on')[method]('active')
32
+ })
33
+
34
+ // add tipsies to grid for scaffolding
35
+ if ($('#gridSystem').length) {
36
+ $('#gridSystem').tooltip({
37
+ selector: '.show-grid > div'
38
+ , title: function () { return $(this).width() + 'px' }
39
+ })
40
+ }
41
+
42
+ // tooltip demo
43
+ $('.tooltip-demo').tooltip({
44
+ selector: "a[rel=tooltip]"
45
+ })
46
+
47
+ $('.tooltip-test').tooltip()
48
+ $('.popover-test').popover()
49
+
50
+ // popover demo
51
+ $("a[rel=popover]")
52
+ .popover()
53
+ .click(function(e) {
54
+ e.preventDefault()
55
+ })
56
+
57
+ // button state demo
58
+ $('#fat-btn')
59
+ .click(function () {
60
+ var btn = $(this)
61
+ btn.button('loading')
62
+ setTimeout(function () {
63
+ btn.button('reset')
64
+ }, 3000)
65
+ })
66
+
67
+ // carousel demo
68
+ $('#myCarousel').carousel()
69
+
70
+ // javascript build logic
71
+ var inputsComponent = $("#components.download input")
72
+ , inputsPlugin = $("#plugins.download input")
73
+ , inputsVariables = $("#variables.download input")
74
+
75
+ // toggle all plugin checkboxes
76
+ $('#components.download .toggle-all').on('click', function (e) {
77
+ e.preventDefault()
78
+ inputsComponent.attr('checked', !inputsComponent.is(':checked'))
79
+ })
80
+
81
+ $('#plugins.download .toggle-all').on('click', function (e) {
82
+ e.preventDefault()
83
+ inputsPlugin.attr('checked', !inputsPlugin.is(':checked'))
84
+ })
85
+
86
+ $('#variables.download .toggle-all').on('click', function (e) {
87
+ e.preventDefault()
88
+ inputsVariables.val('')
89
+ })
90
+
91
+ // request built javascript
92
+ $('.download-btn').on('click', function () {
93
+
94
+ var css = $("#components.download input:checked")
95
+ .map(function () { return this.value })
96
+ .toArray()
97
+ , js = $("#plugins.download input:checked")
98
+ .map(function () { return this.value })
99
+ .toArray()
100
+ , vars = {}
101
+ , img = ['glyphicons-halflings.png', 'glyphicons-halflings-white.png']
102
+
103
+ $("#variables.download input")
104
+ .each(function () {
105
+ $(this).val() && (vars[ $(this).prev().text() ] = $(this).val())
106
+ })
107
+
108
+ $.ajax({
109
+ type: 'POST'
110
+ , url: /\?dev/.test(window.location) ? 'http://localhost:3000' : 'http://bootstrap.herokuapp.com'
111
+ , dataType: 'jsonpi'
112
+ , params: {
113
+ js: js
114
+ , css: css
115
+ , vars: vars
116
+ , img: img
117
+ }
118
+ })
119
+ })
120
+ })
121
+
122
+ // Modified from the original jsonpi https://github.com/benvinegar/jquery-jsonpi
123
+ $.ajaxTransport('jsonpi', function(opts, originalOptions, jqXHR) {
124
+ var url = opts.url;
125
+
126
+ return {
127
+ send: function(_, completeCallback) {
128
+ var name = 'jQuery_iframe_' + jQuery.now()
129
+ , iframe, form
130
+
131
+ iframe = $('<iframe>')
132
+ .attr('name', name)
133
+ .appendTo('head')
134
+
135
+ form = $('<form>')
136
+ .attr('method', opts.type) // GET or POST
137
+ .attr('action', url)
138
+ .attr('target', name)
139
+
140
+ $.each(opts.params, function(k, v) {
141
+
142
+ $('<input>')
143
+ .attr('type', 'hidden')
144
+ .attr('name', k)
145
+ .attr('value', typeof v == 'string' ? v : JSON.stringify(v))
146
+ .appendTo(form)
147
+ })
148
+
149
+ form.appendTo('body').submit()
150
+ }
151
+ }
152
+ })
153
+
154
+ }(window.jQuery)
js/bootstrap/bootstrap-affix.js ADDED
@@ -0,0 +1,104 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ==========================================================
2
+ * bootstrap-affix.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#affix
4
+ * ==========================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ========================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* AFFIX CLASS DEFINITION
27
+ * ====================== */
28
+
29
+ var Affix = function (element, options) {
30
+ this.options = $.extend({}, $.fn.affix.defaults, options)
31
+ this.$window = $(window).on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
32
+ this.$element = $(element)
33
+ this.checkPosition()
34
+ }
35
+
36
+ Affix.prototype.checkPosition = function () {
37
+ if (!this.$element.is(':visible')) return
38
+
39
+ var scrollHeight = $(document).height()
40
+ , scrollTop = this.$window.scrollTop()
41
+ , position = this.$element.offset()
42
+ , offset = this.options.offset
43
+ , offsetBottom = offset.bottom
44
+ , offsetTop = offset.top
45
+ , reset = 'affix affix-top affix-bottom'
46
+ , affix
47
+
48
+ if (typeof offset != 'object') offsetBottom = offsetTop = offset
49
+ if (typeof offsetTop == 'function') offsetTop = offset.top()
50
+ if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()
51
+
52
+ affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ?
53
+ false : offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ?
54
+ 'bottom' : offsetTop != null && scrollTop <= offsetTop ?
55
+ 'top' : false
56
+
57
+ if (this.affixed === affix) return
58
+
59
+ this.affixed = affix
60
+ this.unpin = affix == 'bottom' ? position.top - scrollTop : null
61
+
62
+ this.$element.removeClass(reset).addClass('affix' + (affix ? '-' + affix : ''))
63
+ }
64
+
65
+
66
+ /* AFFIX PLUGIN DEFINITION
67
+ * ======================= */
68
+
69
+ $.fn.affix = function (option) {
70
+ return this.each(function () {
71
+ var $this = $(this)
72
+ , data = $this.data('affix')
73
+ , options = typeof option == 'object' && option
74
+ if (!data) $this.data('affix', (data = new Affix(this, options)))
75
+ if (typeof option == 'string') data[option]()
76
+ })
77
+ }
78
+
79
+ $.fn.affix.Constructor = Affix
80
+
81
+ $.fn.affix.defaults = {
82
+ offset: 0
83
+ }
84
+
85
+
86
+ /* AFFIX DATA-API
87
+ * ============== */
88
+
89
+ $(window).on('load', function () {
90
+ $('[data-spy="affix"]').each(function () {
91
+ var $spy = $(this)
92
+ , data = $spy.data()
93
+
94
+ data.offset = data.offset || {}
95
+
96
+ data.offsetBottom && (data.offset.bottom = data.offsetBottom)
97
+ data.offsetTop && (data.offset.top = data.offsetTop)
98
+
99
+ $spy.affix(data)
100
+ })
101
+ })
102
+
103
+
104
+ }(window.jQuery);
js/bootstrap/bootstrap-alert.js ADDED
@@ -0,0 +1,90 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ==========================================================
2
+ * bootstrap-alert.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#alerts
4
+ * ==========================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ========================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* ALERT CLASS DEFINITION
27
+ * ====================== */
28
+
29
+ var dismiss = '[data-dismiss="alert"]'
30
+ , Alert = function (el) {
31
+ $(el).on('click', dismiss, this.close)
32
+ }
33
+
34
+ Alert.prototype.close = function (e) {
35
+ var $this = $(this)
36
+ , selector = $this.attr('data-target')
37
+ , $parent
38
+
39
+ if (!selector) {
40
+ selector = $this.attr('href')
41
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
42
+ }
43
+
44
+ $parent = $(selector)
45
+
46
+ e && e.preventDefault()
47
+
48
+ $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
49
+
50
+ $parent.trigger(e = $.Event('close'))
51
+
52
+ if (e.isDefaultPrevented()) return
53
+
54
+ $parent.removeClass('in')
55
+
56
+ function removeElement() {
57
+ $parent
58
+ .trigger('closed')
59
+ .remove()
60
+ }
61
+
62
+ $.support.transition && $parent.hasClass('fade') ?
63
+ $parent.on($.support.transition.end, removeElement) :
64
+ removeElement()
65
+ }
66
+
67
+
68
+ /* ALERT PLUGIN DEFINITION
69
+ * ======================= */
70
+
71
+ $.fn.alert = function (option) {
72
+ return this.each(function () {
73
+ var $this = $(this)
74
+ , data = $this.data('alert')
75
+ if (!data) $this.data('alert', (data = new Alert(this)))
76
+ if (typeof option == 'string') data[option].call($this)
77
+ })
78
+ }
79
+
80
+ $.fn.alert.Constructor = Alert
81
+
82
+
83
+ /* ALERT DATA-API
84
+ * ============== */
85
+
86
+ $(function () {
87
+ $('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
88
+ })
89
+
90
+ }(window.jQuery);
js/bootstrap/bootstrap-button.js ADDED
@@ -0,0 +1,96 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ============================================================
2
+ * bootstrap-button.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#buttons
4
+ * ============================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ============================================================ */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* BUTTON PUBLIC CLASS DEFINITION
27
+ * ============================== */
28
+
29
+ var Button = function (element, options) {
30
+ this.$element = $(element)
31
+ this.options = $.extend({}, $.fn.button.defaults, options)
32
+ }
33
+
34
+ Button.prototype.setState = function (state) {
35
+ var d = 'disabled'
36
+ , $el = this.$element
37
+ , data = $el.data()
38
+ , val = $el.is('input') ? 'val' : 'html'
39
+
40
+ state = state + 'Text'
41
+ data.resetText || $el.data('resetText', $el[val]())
42
+
43
+ $el[val](data[state] || this.options[state])
44
+
45
+ // push to event loop to allow forms to submit
46
+ setTimeout(function () {
47
+ state == 'loadingText' ?
48
+ $el.addClass(d).attr(d, d) :
49
+ $el.removeClass(d).removeAttr(d)
50
+ }, 0)
51
+ }
52
+
53
+ Button.prototype.toggle = function () {
54
+ var $parent = this.$element.closest('[data-toggle="buttons-radio"]')
55
+
56
+ $parent && $parent
57
+ .find('.active')
58
+ .removeClass('active')
59
+
60
+ this.$element.toggleClass('active')
61
+ }
62
+
63
+
64
+ /* BUTTON PLUGIN DEFINITION
65
+ * ======================== */
66
+
67
+ $.fn.button = function (option) {
68
+ return this.each(function () {
69
+ var $this = $(this)
70
+ , data = $this.data('button')
71
+ , options = typeof option == 'object' && option
72
+ if (!data) $this.data('button', (data = new Button(this, options)))
73
+ if (option == 'toggle') data.toggle()
74
+ else if (option) data.setState(option)
75
+ })
76
+ }
77
+
78
+ $.fn.button.defaults = {
79
+ loadingText: 'loading...'
80
+ }
81
+
82
+ $.fn.button.Constructor = Button
83
+
84
+
85
+ /* BUTTON DATA-API
86
+ * =============== */
87
+
88
+ $(function () {
89
+ $('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
90
+ var $btn = $(e.target)
91
+ if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
92
+ $btn.button('toggle')
93
+ })
94
+ })
95
+
96
+ }(window.jQuery);
js/bootstrap/bootstrap-carousel.js ADDED
@@ -0,0 +1,176 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ==========================================================
2
+ * bootstrap-carousel.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#carousel
4
+ * ==========================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ========================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* CAROUSEL CLASS DEFINITION
27
+ * ========================= */
28
+
29
+ var Carousel = function (element, options) {
30
+ this.$element = $(element)
31
+ this.options = options
32
+ this.options.slide && this.slide(this.options.slide)
33
+ this.options.pause == 'hover' && this.$element
34
+ .on('mouseenter', $.proxy(this.pause, this))
35
+ .on('mouseleave', $.proxy(this.cycle, this))
36
+ }
37
+
38
+ Carousel.prototype = {
39
+
40
+ cycle: function (e) {
41
+ if (!e) this.paused = false
42
+ this.options.interval
43
+ && !this.paused
44
+ && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
45
+ return this
46
+ }
47
+
48
+ , to: function (pos) {
49
+ var $active = this.$element.find('.item.active')
50
+ , children = $active.parent().children()
51
+ , activePos = children.index($active)
52
+ , that = this
53
+
54
+ if (pos > (children.length - 1) || pos < 0) return
55
+
56
+ if (this.sliding) {
57
+ return this.$element.one('slid', function () {
58
+ that.to(pos)
59
+ })
60
+ }
61
+
62
+ if (activePos == pos) {
63
+ return this.pause().cycle()
64
+ }
65
+
66
+ return this.slide(pos > activePos ? 'next' : 'prev', $(children[pos]))
67
+ }
68
+
69
+ , pause: function (e) {
70
+ if (!e) this.paused = true
71
+ if (this.$element.find('.next, .prev').length && $.support.transition.end) {
72
+ this.$element.trigger($.support.transition.end)
73
+ this.cycle()
74
+ }
75
+ clearInterval(this.interval)
76
+ this.interval = null
77
+ return this
78
+ }
79
+
80
+ , next: function () {
81
+ if (this.sliding) return
82
+ return this.slide('next')
83
+ }
84
+
85
+ , prev: function () {
86
+ if (this.sliding) return
87
+ return this.slide('prev')
88
+ }
89
+
90
+ , slide: function (type, next) {
91
+ var $active = this.$element.find('.item.active')
92
+ , $next = next || $active[type]()
93
+ , isCycling = this.interval
94
+ , direction = type == 'next' ? 'left' : 'right'
95
+ , fallback = type == 'next' ? 'first' : 'last'
96
+ , that = this
97
+ , e = $.Event('slide', {
98
+ relatedTarget: $next[0]
99
+ })
100
+
101
+ this.sliding = true
102
+
103
+ isCycling && this.pause()
104
+
105
+ $next = $next.length ? $next : this.$element.find('.item')[fallback]()
106
+
107
+ if ($next.hasClass('active')) return
108
+
109
+ if ($.support.transition && this.$element.hasClass('slide')) {
110
+ this.$element.trigger(e)
111
+ if (e.isDefaultPrevented()) return
112
+ $next.addClass(type)
113
+ $next[0].offsetWidth // force reflow
114
+ $active.addClass(direction)
115
+ $next.addClass(direction)
116
+ this.$element.one($.support.transition.end, function () {
117
+ $next.removeClass([type, direction].join(' ')).addClass('active')
118
+ $active.removeClass(['active', direction].join(' '))
119
+ that.sliding = false
120
+ setTimeout(function () { that.$element.trigger('slid') }, 0)
121
+ })
122
+ } else {
123
+ this.$element.trigger(e)
124
+ if (e.isDefaultPrevented()) return
125
+ $active.removeClass('active')
126
+ $next.addClass('active')
127
+ this.sliding = false
128
+ this.$element.trigger('slid')
129
+ }
130
+
131
+ isCycling && this.cycle()
132
+
133
+ return this
134
+ }
135
+
136
+ }
137
+
138
+
139
+ /* CAROUSEL PLUGIN DEFINITION
140
+ * ========================== */
141
+
142
+ $.fn.carousel = function (option) {
143
+ return this.each(function () {
144
+ var $this = $(this)
145
+ , data = $this.data('carousel')
146
+ , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
147
+ , action = typeof option == 'string' ? option : options.slide
148
+ if (!data) $this.data('carousel', (data = new Carousel(this, options)))
149
+ if (typeof option == 'number') data.to(option)
150
+ else if (action) data[action]()
151
+ else if (options.interval) data.cycle()
152
+ })
153
+ }
154
+
155
+ $.fn.carousel.defaults = {
156
+ interval: 5000
157
+ , pause: 'hover'
158
+ }
159
+
160
+ $.fn.carousel.Constructor = Carousel
161
+
162
+
163
+ /* CAROUSEL DATA-API
164
+ * ================= */
165
+
166
+ $(function () {
167
+ $('body').on('click.carousel.data-api', '[data-slide]', function ( e ) {
168
+ var $this = $(this), href
169
+ , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
170
+ , options = !$target.data('modal') && $.extend({}, $target.data(), $this.data())
171
+ $target.carousel(options)
172
+ e.preventDefault()
173
+ })
174
+ })
175
+
176
+ }(window.jQuery);
js/bootstrap/bootstrap-collapse.js ADDED
@@ -0,0 +1,158 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* =============================================================
2
+ * bootstrap-collapse.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#collapse
4
+ * =============================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ============================================================ */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* COLLAPSE PUBLIC CLASS DEFINITION
27
+ * ================================ */
28
+
29
+ var Collapse = function (element, options) {
30
+ this.$element = $(element)
31
+ this.options = $.extend({}, $.fn.collapse.defaults, options)
32
+
33
+ if (this.options.parent) {
34
+ this.$parent = $(this.options.parent)
35
+ }
36
+
37
+ this.options.toggle && this.toggle()
38
+ }
39
+
40
+ Collapse.prototype = {
41
+
42
+ constructor: Collapse
43
+
44
+ , dimension: function () {
45
+ var hasWidth = this.$element.hasClass('width')
46
+ return hasWidth ? 'width' : 'height'
47
+ }
48
+
49
+ , show: function () {
50
+ var dimension
51
+ , scroll
52
+ , actives
53
+ , hasData
54
+
55
+ if (this.transitioning) return
56
+
57
+ dimension = this.dimension()
58
+ scroll = $.camelCase(['scroll', dimension].join('-'))
59
+ actives = this.$parent && this.$parent.find('> .accordion-group > .in')
60
+
61
+ if (actives && actives.length) {
62
+ hasData = actives.data('collapse')
63
+ if (hasData && hasData.transitioning) return
64
+ actives.collapse('hide')
65
+ hasData || actives.data('collapse', null)
66
+ }
67
+
68
+ this.$element[dimension](0)
69
+ this.transition('addClass', $.Event('show'), 'shown')
70
+ $.support.transition && this.$element[dimension](this.$element[0][scroll])
71
+ }
72
+
73
+ , hide: function () {
74
+ var dimension
75
+ if (this.transitioning) return
76
+ dimension = this.dimension()
77
+ this.reset(this.$element[dimension]())
78
+ this.transition('removeClass', $.Event('hide'), 'hidden')
79
+ this.$element[dimension](0)
80
+ }
81
+
82
+ , reset: function (size) {
83
+ var dimension = this.dimension()
84
+
85
+ this.$element
86
+ .removeClass('collapse')
87
+ [dimension](size || 'auto')
88
+ [0].offsetWidth
89
+
90
+ this.$element[size !== null ? 'addClass' : 'removeClass']('collapse')
91
+
92
+ return this
93
+ }
94
+
95
+ , transition: function (method, startEvent, completeEvent) {
96
+ var that = this
97
+ , complete = function () {
98
+ if (startEvent.type == 'show') that.reset()
99
+ that.transitioning = 0
100
+ that.$element.trigger(completeEvent)
101
+ }
102
+
103
+ this.$element.trigger(startEvent)
104
+
105
+ if (startEvent.isDefaultPrevented()) return
106
+
107
+ this.transitioning = 1
108
+
109
+ this.$element[method]('in')
110
+
111
+ $.support.transition && this.$element.hasClass('collapse') ?
112
+ this.$element.one($.support.transition.end, complete) :
113
+ complete()
114
+ }
115
+
116
+ , toggle: function () {
117
+ this[this.$element.hasClass('in') ? 'hide' : 'show']()
118
+ }
119
+
120
+ }
121
+
122
+
123
+ /* COLLAPSIBLE PLUGIN DEFINITION
124
+ * ============================== */
125
+
126
+ $.fn.collapse = function (option) {
127
+ return this.each(function () {
128
+ var $this = $(this)
129
+ , data = $this.data('collapse')
130
+ , options = typeof option == 'object' && option
131
+ if (!data) $this.data('collapse', (data = new Collapse(this, options)))
132
+ if (typeof option == 'string') data[option]()
133
+ })
134
+ }
135
+
136
+ $.fn.collapse.defaults = {
137
+ toggle: true
138
+ }
139
+
140
+ $.fn.collapse.Constructor = Collapse
141
+
142
+
143
+ /* COLLAPSIBLE DATA-API
144
+ * ==================== */
145
+
146
+ $(function () {
147
+ $('body').on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
148
+ var $this = $(this), href
149
+ , target = $this.attr('data-target')
150
+ || e.preventDefault()
151
+ || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
152
+ , option = $(target).data('collapse') ? 'toggle' : $this.data()
153
+ $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
154
+ $(target).collapse(option)
155
+ })
156
+ })
157
+
158
+ }(window.jQuery);
js/bootstrap/bootstrap-dropdown.js ADDED
@@ -0,0 +1,150 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ============================================================
2
+ * bootstrap-dropdown.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#dropdowns
4
+ * ============================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ============================================================ */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* DROPDOWN CLASS DEFINITION
27
+ * ========================= */
28
+
29
+ var toggle = '[data-toggle=dropdown]'
30
+ , Dropdown = function (element) {
31
+ var $el = $(element).on('click.dropdown.data-api', this.toggle)
32
+ $('html').on('click.dropdown.data-api', function () {
33
+ $el.parent().removeClass('open')
34
+ })
35
+ }
36
+
37
+ Dropdown.prototype = {
38
+
39
+ constructor: Dropdown
40
+
41
+ , toggle: function (e) {
42
+ var $this = $(this)
43
+ , $parent
44
+ , isActive
45
+
46
+ if ($this.is('.disabled, :disabled')) return
47
+
48
+ $parent = getParent($this)
49
+
50
+ isActive = $parent.hasClass('open')
51
+
52
+ clearMenus()
53
+
54
+ if (!isActive) {
55
+ $parent.toggleClass('open')
56
+ $this.focus()
57
+ }
58
+
59
+ return false
60
+ }
61
+
62
+ , keydown: function (e) {
63
+ var $this
64
+ , $items
65
+ , $active
66
+ , $parent
67
+ , isActive
68
+ , index
69
+
70
+ if (!/(38|40|27)/.test(e.keyCode)) return
71
+
72
+ $this = $(this)
73
+
74
+ e.preventDefault()
75
+ e.stopPropagation()
76
+
77
+ if ($this.is('.disabled, :disabled')) return
78
+
79
+ $parent = getParent($this)
80
+
81
+ isActive = $parent.hasClass('open')
82
+
83
+ if (!isActive || (isActive && e.keyCode == 27)) return $this.click()
84
+
85
+ $items = $('[role=menu] li:not(.divider) a', $parent)
86
+
87
+ if (!$items.length) return
88
+
89
+ index = $items.index($items.filter(':focus'))
90
+
91
+ if (e.keyCode == 38 && index > 0) index-- // up
92
+ if (e.keyCode == 40 && index < $items.length - 1) index++ // down
93
+ if (!~index) index = 0
94
+
95
+ $items
96
+ .eq(index)
97
+ .focus()
98
+ }
99
+
100
+ }
101
+
102
+ function clearMenus() {
103
+ getParent($(toggle))
104
+ .removeClass('open')
105
+ }
106
+
107
+ function getParent($this) {
108
+ var selector = $this.attr('data-target')
109
+ , $parent
110
+
111
+ if (!selector) {
112
+ selector = $this.attr('href')
113
+ selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
114
+ }
115
+
116
+ $parent = $(selector)
117
+ $parent.length || ($parent = $this.parent())
118
+
119
+ return $parent
120
+ }
121
+
122
+
123
+ /* DROPDOWN PLUGIN DEFINITION
124
+ * ========================== */
125
+
126
+ $.fn.dropdown = function (option) {
127
+ return this.each(function () {
128
+ var $this = $(this)
129
+ , data = $this.data('dropdown')
130
+ if (!data) $this.data('dropdown', (data = new Dropdown(this)))
131
+ if (typeof option == 'string') data[option].call($this)
132
+ })
133
+ }
134
+
135
+ $.fn.dropdown.Constructor = Dropdown
136
+
137
+
138
+ /* APPLY TO STANDARD DROPDOWN ELEMENTS
139
+ * =================================== */
140
+
141
+ $(function () {
142
+ $('html')
143
+ .on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
144
+ $('body')
145
+ .on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
146
+ .on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
147
+ .on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
148
+ })
149
+
150
+ }(window.jQuery);
js/bootstrap/bootstrap-modal.js ADDED
@@ -0,0 +1,239 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* =========================================================
2
+ * bootstrap-modal.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#modals
4
+ * =========================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ========================================================= */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* MODAL CLASS DEFINITION
27
+ * ====================== */
28
+
29
+ var Modal = function (element, options) {
30
+ this.options = options
31
+ this.$element = $(element)
32
+ .delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
33
+ this.options.remote && this.$element.find('.modal-body').load(this.options.remote)
34
+ }
35
+
36
+ Modal.prototype = {
37
+
38
+ constructor: Modal
39
+
40
+ , toggle: function () {
41
+ return this[!this.isShown ? 'show' : 'hide']()
42
+ }
43
+
44
+ , show: function () {
45
+ var that = this
46
+ , e = $.Event('show')
47
+
48
+ this.$element.trigger(e)
49
+
50
+ if (this.isShown || e.isDefaultPrevented()) return
51
+
52
+ $('body').addClass('modal-open')
53
+
54
+ this.isShown = true
55
+
56
+ this.escape()
57
+
58
+ this.backdrop(function () {
59
+ var transition = $.support.transition && that.$element.hasClass('fade')
60
+
61
+ if (!that.$element.parent().length) {
62
+ that.$element.appendTo(document.body) //don't move modals dom position
63
+ }
64
+
65
+ that.$element
66
+ .show()
67
+
68
+ if (transition) {
69
+ that.$element[0].offsetWidth // force reflow
70
+ }
71
+
72
+ that.$element
73
+ .addClass('in')
74
+ .attr('aria-hidden', false)
75
+ .focus()
76
+
77
+ that.enforceFocus()
78
+
79
+ transition ?
80
+ that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
81
+ that.$element.trigger('shown')
82
+
83
+ })
84
+ }
85
+
86
+ , hide: function (e) {
87
+ e && e.preventDefault()
88
+
89
+ var that = this
90
+
91
+ e = $.Event('hide')
92
+
93
+ this.$element.trigger(e)
94
+
95
+ if (!this.isShown || e.isDefaultPrevented()) return
96
+
97
+ this.isShown = false
98
+
99
+ $('body').removeClass('modal-open')
100
+
101
+ this.escape()
102
+
103
+ $(document).off('focusin.modal')
104
+
105
+ this.$element
106
+ .removeClass('in')
107
+ .attr('aria-hidden', true)
108
+
109
+ $.support.transition && this.$element.hasClass('fade') ?
110
+ this.hideWithTransition() :
111
+ this.hideModal()
112
+ }
113
+
114
+ , enforceFocus: function () {
115
+ var that = this
116
+ $(document).on('focusin.modal', function (e) {
117
+ if (that.$element[0] !== e.target && !that.$element.has(e.target).length) {
118
+ that.$element.focus()
119
+ }
120
+ })
121
+ }
122
+
123
+ , escape: function () {
124
+ var that = this
125
+ if (this.isShown && this.options.keyboard) {
126
+ this.$element.on('keyup.dismiss.modal', function ( e ) {
127
+ e.which == 27 && that.hide()
128
+ })
129
+ } else if (!this.isShown) {
130
+ this.$element.off('keyup.dismiss.modal')
131
+ }
132
+ }
133
+
134
+ , hideWithTransition: function () {
135
+ var that = this
136
+ , timeout = setTimeout(function () {
137
+ that.$element.off($.support.transition.end)
138
+ that.hideModal()
139
+ }, 500)
140
+
141
+ this.$element.one($.support.transition.end, function () {
142
+ clearTimeout(timeout)
143
+ that.hideModal()
144
+ })
145
+ }
146
+
147
+ , hideModal: function (that) {
148
+ this.$element
149
+ .hide()
150
+ .trigger('hidden')
151
+
152
+ this.backdrop()
153
+ }
154
+
155
+ , removeBackdrop: function () {
156
+ this.$backdrop.remove()
157
+ this.$backdrop = null
158
+ }
159
+
160
+ , backdrop: function (callback) {
161
+ var that = this
162
+ , animate = this.$element.hasClass('fade') ? 'fade' : ''
163
+
164
+ if (this.isShown && this.options.backdrop) {
165
+ var doAnimate = $.support.transition && animate
166
+
167
+ this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
168
+ .appendTo(document.body)
169
+
170
+ if (this.options.backdrop != 'static') {
171
+ this.$backdrop.click($.proxy(this.hide, this))
172
+ }
173
+
174
+ if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
175
+
176
+ this.$backdrop.addClass('in')
177
+
178
+ doAnimate ?
179
+ this.$backdrop.one($.support.transition.end, callback) :
180
+ callback()
181
+
182
+ } else if (!this.isShown && this.$backdrop) {
183
+ this.$backdrop.removeClass('in')
184
+
185
+ $.support.transition && this.$element.hasClass('fade')?
186
+ this.$backdrop.one($.support.transition.end, $.proxy(this.removeBackdrop, this)) :
187
+ this.removeBackdrop()
188
+
189
+ } else if (callback) {
190
+ callback()
191
+ }
192
+ }
193
+ }
194
+
195
+
196
+ /* MODAL PLUGIN DEFINITION
197
+ * ======================= */
198
+
199
+ $.fn.modal = function (option) {
200
+ return this.each(function () {
201
+ var $this = $(this)
202
+ , data = $this.data('modal')
203
+ , options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option)
204
+ if (!data) $this.data('modal', (data = new Modal(this, options)))
205
+ if (typeof option == 'string') data[option]()
206
+ else if (options.show) data.show()
207
+ })
208
+ }
209
+
210
+ $.fn.modal.defaults = {
211
+ backdrop: true
212
+ , keyboard: true
213
+ , show: true
214
+ }
215
+
216
+ $.fn.modal.Constructor = Modal
217
+
218
+
219
+ /* MODAL DATA-API
220
+ * ============== */
221
+
222
+ $(function () {
223
+ $('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) {
224
+ var $this = $(this)
225
+ , href = $this.attr('href')
226
+ , $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
227
+ , option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
228
+
229
+ e.preventDefault()
230
+
231
+ $target
232
+ .modal(option)
233
+ .one('hide', function () {
234
+ $this.focus()
235
+ })
236
+ })
237
+ })
238
+
239
+ }(window.jQuery);
js/bootstrap/bootstrap-popover.js ADDED
@@ -0,0 +1,103 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ===========================================================
2
+ * bootstrap-popover.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#popovers
4
+ * ===========================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * =========================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* POPOVER PUBLIC CLASS DEFINITION
27
+ * =============================== */
28
+
29
+ var Popover = function (element, options) {
30
+ this.init('popover', element, options)
31
+ }
32
+
33
+
34
+ /* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js
35
+ ========================================== */
36
+
37
+ Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, {
38
+
39
+ constructor: Popover
40
+
41
+ , setContent: function () {
42
+ var $tip = this.tip()
43
+ , title = this.getTitle()
44
+ , content = this.getContent()
45
+
46
+ $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
47
+ $tip.find('.popover-content > *')[this.options.html ? 'html' : 'text'](content)
48
+
49
+ $tip.removeClass('fade top bottom left right in')
50
+ }
51
+
52
+ , hasContent: function () {
53
+ return this.getTitle() || this.getContent()
54
+ }
55
+
56
+ , getContent: function () {
57
+ var content
58
+ , $e = this.$element
59
+ , o = this.options
60
+
61
+ content = $e.attr('data-content')
62
+ || (typeof o.content == 'function' ? o.content.call($e[0]) : o.content)
63
+
64
+ return content
65
+ }
66
+
67
+ , tip: function () {
68
+ if (!this.$tip) {
69
+ this.$tip = $(this.options.template)
70
+ }
71
+ return this.$tip
72
+ }
73
+
74
+ , destroy: function () {
75
+ this.hide().$element.off('.' + this.type).removeData(this.type)
76
+ }
77
+
78
+ })
79
+
80
+
81
+ /* POPOVER PLUGIN DEFINITION
82
+ * ======================= */
83
+
84
+ $.fn.popover = function (option) {
85
+ return this.each(function () {
86
+ var $this = $(this)
87
+ , data = $this.data('popover')
88
+ , options = typeof option == 'object' && option
89
+ if (!data) $this.data('popover', (data = new Popover(this, options)))
90
+ if (typeof option == 'string') data[option]()
91
+ })
92
+ }
93
+
94
+ $.fn.popover.Constructor = Popover
95
+
96
+ $.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, {
97
+ placement: 'right'
98
+ , trigger: 'click'
99
+ , content: ''
100
+ , template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
101
+ })
102
+
103
+ }(window.jQuery);
js/bootstrap/bootstrap-scrollspy.js ADDED
@@ -0,0 +1,151 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* =============================================================
2
+ * bootstrap-scrollspy.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#scrollspy
4
+ * =============================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ============================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* SCROLLSPY CLASS DEFINITION
27
+ * ========================== */
28
+
29
+ function ScrollSpy(element, options) {
30
+ var process = $.proxy(this.process, this)
31
+ , $element = $(element).is('body') ? $(window) : $(element)
32
+ , href
33
+ this.options = $.extend({}, $.fn.scrollspy.defaults, options)
34
+ this.$scrollElement = $element.on('scroll.scroll-spy.data-api', process)
35
+ this.selector = (this.options.target
36
+ || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
37
+ || '') + ' .nav li > a'
38
+ this.$body = $('body')
39
+ this.refresh()
40
+ this.process()
41
+ }
42
+
43
+ ScrollSpy.prototype = {
44
+
45
+ constructor: ScrollSpy
46
+
47
+ , refresh: function () {
48
+ var self = this
49
+ , $targets
50
+
51
+ this.offsets = $([])
52
+ this.targets = $([])
53
+
54
+ $targets = this.$body
55
+ .find(this.selector)
56
+ .map(function () {
57
+ var $el = $(this)
58
+ , href = $el.data('target') || $el.attr('href')
59
+ , $href = /^#\w/.test(href) && $(href)
60
+ return ( $href
61
+ && $href.length
62
+ && [[ $href.position().top, href ]] ) || null
63
+ })
64
+ .sort(function (a, b) { return a[0] - b[0] })
65
+ .each(function () {
66
+ self.offsets.push(this[0])
67
+ self.targets.push(this[1])
68
+ })
69
+ }
70
+
71
+ , process: function () {
72
+ var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
73
+ , scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight
74
+ , maxScroll = scrollHeight - this.$scrollElement.height()
75
+ , offsets = this.offsets
76
+ , targets = this.targets
77
+ , activeTarget = this.activeTarget
78
+ , i
79
+
80
+ if (scrollTop >= maxScroll) {
81
+ return activeTarget != (i = targets.last()[0])
82
+ && this.activate ( i )
83
+ }
84
+
85
+ for (i = offsets.length; i--;) {
86
+ activeTarget != targets[i]
87
+ && scrollTop >= offsets[i]
88
+ && (!offsets[i + 1] || scrollTop <= offsets[i + 1])
89
+ && this.activate( targets[i] )
90
+ }
91
+ }
92
+
93
+ , activate: function (target) {
94
+ var active
95
+ , selector
96
+
97
+ this.activeTarget = target
98
+
99
+ $(this.selector)
100
+ .parent('.active')
101
+ .removeClass('active')
102
+
103
+ selector = this.selector
104
+ + '[data-target="' + target + '"],'
105
+ + this.selector + '[href="' + target + '"]'
106
+
107
+ active = $(selector)
108
+ .parent('li')
109
+ .addClass('active')
110
+
111
+ if (active.parent('.dropdown-menu').length) {
112
+ active = active.closest('li.dropdown').addClass('active')
113
+ }
114
+
115
+ active.trigger('activate')
116
+ }
117
+
118
+ }
119
+
120
+
121
+ /* SCROLLSPY PLUGIN DEFINITION
122
+ * =========================== */
123
+
124
+ $.fn.scrollspy = function (option) {
125
+ return this.each(function () {
126
+ var $this = $(this)
127
+ , data = $this.data('scrollspy')
128
+ , options = typeof option == 'object' && option
129
+ if (!data) $this.data('scrollspy', (data = new ScrollSpy(this, options)))
130
+ if (typeof option == 'string') data[option]()
131
+ })
132
+ }
133
+
134
+ $.fn.scrollspy.Constructor = ScrollSpy
135
+
136
+ $.fn.scrollspy.defaults = {
137
+ offset: 10
138
+ }
139
+
140
+
141
+ /* SCROLLSPY DATA-API
142
+ * ================== */
143
+
144
+ $(window).on('load', function () {
145
+ $('[data-spy="scroll"]').each(function () {
146
+ var $spy = $(this)
147
+ $spy.scrollspy($spy.data())
148
+ })
149
+ })
150
+
151
+ }(window.jQuery);
js/bootstrap/bootstrap-tab.js ADDED
@@ -0,0 +1,135 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ========================================================
2
+ * bootstrap-tab.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#tabs
4
+ * ========================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ======================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* TAB CLASS DEFINITION
27
+ * ==================== */
28
+
29
+ var Tab = function (element) {
30
+ this.element = $(element)
31
+ }
32
+
33
+ Tab.prototype = {
34
+
35
+ constructor: Tab
36
+
37
+ , show: function () {
38
+ var $this = this.element
39
+ , $ul = $this.closest('ul:not(.dropdown-menu)')
40
+ , selector = $this.attr('data-target')
41
+ , previous
42
+ , $target
43
+ , e
44
+
45
+ if (!selector) {
46
+ selector = $this.attr('href')
47
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
48
+ }
49
+
50
+ if ( $this.parent('li').hasClass('active') ) return
51
+
52
+ previous = $ul.find('.active a').last()[0]
53
+
54
+ e = $.Event('show', {
55
+ relatedTarget: previous
56
+ })
57
+
58
+ $this.trigger(e)
59
+
60
+ if (e.isDefaultPrevented()) return
61
+
62
+ $target = $(selector)
63
+
64
+ this.activate($this.parent('li'), $ul)
65
+ this.activate($target, $target.parent(), function () {
66
+ $this.trigger({
67
+ type: 'shown'
68
+ , relatedTarget: previous
69
+ })
70
+ })
71
+ }
72
+
73
+ , activate: function ( element, container, callback) {
74
+ var $active = container.find('> .active')
75
+ , transition = callback
76
+ && $.support.transition
77
+ && $active.hasClass('fade')
78
+
79
+ function next() {
80
+ $active
81
+ .removeClass('active')
82
+ .find('> .dropdown-menu > .active')
83
+ .removeClass('active')
84
+
85
+ element.addClass('active')
86
+
87
+ if (transition) {
88
+ element[0].offsetWidth // reflow for transition
89
+ element.addClass('in')
90
+ } else {
91
+ element.removeClass('fade')
92
+ }
93
+
94
+ if ( element.parent('.dropdown-menu') ) {
95
+ element.closest('li.dropdown').addClass('active')
96
+ }
97
+
98
+ callback && callback()
99
+ }
100
+
101
+ transition ?
102
+ $active.one($.support.transition.end, next) :
103
+ next()
104
+
105
+ $active.removeClass('in')
106
+ }
107
+ }
108
+
109
+
110
+ /* TAB PLUGIN DEFINITION
111
+ * ===================== */
112
+
113
+ $.fn.tab = function ( option ) {
114
+ return this.each(function () {
115
+ var $this = $(this)
116
+ , data = $this.data('tab')
117
+ if (!data) $this.data('tab', (data = new Tab(this)))
118
+ if (typeof option == 'string') data[option]()
119
+ })
120
+ }
121
+
122
+ $.fn.tab.Constructor = Tab
123
+
124
+
125
+ /* TAB DATA-API
126
+ * ============ */
127
+
128
+ $(function () {
129
+ $('body').on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
130
+ e.preventDefault()
131
+ $(this).tab('show')
132
+ })
133
+ })
134
+
135
+ }(window.jQuery);
js/bootstrap/bootstrap-tooltip.js ADDED
@@ -0,0 +1,275 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ===========================================================
2
+ * bootstrap-tooltip.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#tooltips
4
+ * Inspired by the original jQuery.tipsy by Jason Frame
5
+ * ===========================================================
6
+ * Copyright 2012 Twitter, Inc.
7
+ *
8
+ * Licensed under the Apache License, Version 2.0 (the "License");
9
+ * you may not use this file except in compliance with the License.
10
+ * You may obtain a copy of the License at
11
+ *
12
+ * http://www.apache.org/licenses/LICENSE-2.0
13
+ *
14
+ * Unless required by applicable law or agreed to in writing, software
15
+ * distributed under the License is distributed on an "AS IS" BASIS,
16
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
+ * See the License for the specific language governing permissions and
18
+ * limitations under the License.
19
+ * ========================================================== */
20
+
21
+
22
+ !function ($) {
23
+
24
+ "use strict"; // jshint ;_;
25
+
26
+
27
+ /* TOOLTIP PUBLIC CLASS DEFINITION
28
+ * =============================== */
29
+
30
+ var Tooltip = function (element, options) {
31
+ this.init('tooltip', element, options)
32
+ }
33
+
34
+ Tooltip.prototype = {
35
+
36
+ constructor: Tooltip
37
+
38
+ , init: function (type, element, options) {
39
+ var eventIn
40
+ , eventOut
41
+
42
+ this.type = type
43
+ this.$element = $(element)
44
+ this.options = this.getOptions(options)
45
+ this.enabled = true
46
+
47
+ if (this.options.trigger == 'click') {
48
+ this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
49
+ } else if (this.options.trigger != 'manual') {
50
+ eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus'
51
+ eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur'
52
+ this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
53
+ this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
54
+ }
55
+
56
+ this.options.selector ?
57
+ (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
58
+ this.fixTitle()
59
+ }
60
+
61
+ , getOptions: function (options) {
62
+ options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data())
63
+
64
+ if (options.delay && typeof options.delay == 'number') {
65
+ options.delay = {
66
+ show: options.delay
67
+ , hide: options.delay
68
+ }
69
+ }
70
+
71
+ return options
72
+ }
73
+
74
+ , enter: function (e) {
75
+ var self = $(e.currentTarget)[this.type](this._options).data(this.type)
76
+
77
+ if (!self.options.delay || !self.options.delay.show) return self.show()
78
+
79
+ clearTimeout(this.timeout)
80
+ self.hoverState = 'in'
81
+ this.timeout = setTimeout(function() {
82
+ if (self.hoverState == 'in') self.show()
83
+ }, self.options.delay.show)
84
+ }
85
+
86
+ , leave: function (e) {
87
+ var self = $(e.currentTarget)[this.type](this._options).data(this.type)
88
+
89
+ if (this.timeout) clearTimeout(this.timeout)
90
+ if (!self.options.delay || !self.options.delay.hide) return self.hide()
91
+
92
+ self.hoverState = 'out'
93
+ this.timeout = setTimeout(function() {
94
+ if (self.hoverState == 'out') self.hide()
95
+ }, self.options.delay.hide)
96
+ }
97
+
98
+ , show: function () {
99
+ var $tip
100
+ , inside
101
+ , pos
102
+ , actualWidth
103
+ , actualHeight
104
+ , placement
105
+ , tp
106
+
107
+ if (this.hasContent() && this.enabled) {
108
+ $tip = this.tip()
109
+ this.setContent()
110
+
111
+ if (this.options.animation) {
112
+ $tip.addClass('fade')
113
+ }
114
+
115
+ placement = typeof this.options.placement == 'function' ?
116
+ this.options.placement.call(this, $tip[0], this.$element[0]) :
117
+ this.options.placement
118
+
119
+ inside = /in/.test(placement)
120
+
121
+ $tip
122
+ .remove()
123
+ .css({ top: 0, left: 0, display: 'block' })
124
+ .appendTo(inside ? this.$element : document.body)
125
+
126
+ pos = this.getPosition(inside)
127
+
128
+ actualWidth = $tip[0].offsetWidth
129
+ actualHeight = $tip[0].offsetHeight
130
+
131
+ switch (inside ? placement.split(' ')[1] : placement) {
132
+ case 'bottom':
133
+ tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}
134
+ break
135
+ case 'top':
136
+ tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}
137
+ break
138
+ case 'left':
139
+ tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}
140
+ break
141
+ case 'right':
142
+ tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}
143
+ break
144
+ }
145
+
146
+ $tip
147
+ .css(tp)
148
+ .addClass(placement)
149
+ .addClass('in')
150
+ }
151
+ }
152
+
153
+ , setContent: function () {
154
+ var $tip = this.tip()
155
+ , title = this.getTitle()
156
+
157
+ $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
158
+ $tip.removeClass('fade in top bottom left right')
159
+ }
160
+
161
+ , hide: function () {
162
+ var that = this
163
+ , $tip = this.tip()
164
+
165
+ $tip.removeClass('in')
166
+
167
+ function removeWithAnimation() {
168
+ var timeout = setTimeout(function () {
169
+ $tip.off($.support.transition.end).remove()
170
+ }, 500)
171
+
172
+ $tip.one($.support.transition.end, function () {
173
+ clearTimeout(timeout)
174
+ $tip.remove()
175
+ })
176
+ }
177
+
178
+ $.support.transition && this.$tip.hasClass('fade') ?
179
+ removeWithAnimation() :
180
+ $tip.remove()
181
+
182
+ return this
183
+ }
184
+
185
+ , fixTitle: function () {
186
+ var $e = this.$element
187
+ if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
188
+ $e.attr('data-original-title', $e.attr('title') || '').removeAttr('title')
189
+ }
190
+ }
191
+
192
+ , hasContent: function () {
193
+ return this.getTitle()
194
+ }
195
+
196
+ , getPosition: function (inside) {
197
+ return $.extend({}, (inside ? {top: 0, left: 0} : this.$element.offset()), {
198
+ width: this.$element[0].offsetWidth
199
+ , height: this.$element[0].offsetHeight
200
+ })
201
+ }
202
+
203
+ , getTitle: function () {
204
+ var title
205
+ , $e = this.$element
206
+ , o = this.options
207
+
208
+ title = $e.attr('data-original-title')
209
+ || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
210
+
211
+ return title
212
+ }
213
+
214
+ , tip: function () {
215
+ return this.$tip = this.$tip || $(this.options.template)
216
+ }
217
+
218
+ , validate: function () {
219
+ if (!this.$element[0].parentNode) {
220
+ this.hide()
221
+ this.$element = null
222
+ this.options = null
223
+ }
224
+ }
225
+
226
+ , enable: function () {
227
+ this.enabled = true
228
+ }
229
+
230
+ , disable: function () {
231
+ this.enabled = false
232
+ }
233
+
234
+ , toggleEnabled: function () {
235
+ this.enabled = !this.enabled
236
+ }
237
+
238
+ , toggle: function () {
239
+ this[this.tip().hasClass('in') ? 'hide' : 'show']()
240
+ }
241
+
242
+ , destroy: function () {
243
+ this.hide().$element.off('.' + this.type).removeData(this.type)
244
+ }
245
+
246
+ }
247
+
248
+
249
+ /* TOOLTIP PLUGIN DEFINITION
250
+ * ========================= */
251
+
252
+ $.fn.tooltip = function ( option ) {
253
+ return this.each(function () {
254
+ var $this = $(this)
255
+ , data = $this.data('tooltip')
256
+ , options = typeof option == 'object' && option
257
+ if (!data) $this.data('tooltip', (data = new Tooltip(this, options)))
258
+ if (typeof option == 'string') data[option]()
259
+ })
260
+ }
261
+
262
+ $.fn.tooltip.Constructor = Tooltip
263
+
264
+ $.fn.tooltip.defaults = {
265
+ animation: true
266
+ , placement: 'top'
267
+ , selector: false
268
+ , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
269
+ , trigger: 'hover'
270
+ , title: ''
271
+ , delay: 0
272
+ , html: true
273
+ }
274
+
275
+ }(window.jQuery);
js/bootstrap/bootstrap-transition.js ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ===================================================
2
+ * bootstrap-transition.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#transitions
4
+ * ===================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ========================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ $(function () {
24
+
25
+ "use strict"; // jshint ;_;
26
+
27
+
28
+ /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
29
+ * ======================================================= */
30
+
31
+ $.support.transition = (function () {
32
+
33
+ var transitionEnd = (function () {
34
+
35
+ var el = document.createElement('bootstrap')
36
+ , transEndEventNames = {
37
+ 'WebkitTransition' : 'webkitTransitionEnd'
38
+ , 'MozTransition' : 'transitionend'
39
+ , 'OTransition' : 'oTransitionEnd otransitionend'
40
+ , 'transition' : 'transitionend'
41
+ }
42
+ , name
43
+
44
+ for (name in transEndEventNames){
45
+ if (el.style[name] !== undefined) {
46
+ return transEndEventNames[name]
47
+ }
48
+ }
49
+
50
+ }())
51
+
52
+ return transitionEnd && {
53
+ end: transitionEnd
54
+ }
55
+
56
+ })()
57
+
58
+ })
59
+
60
+ }(window.jQuery);
js/bootstrap/bootstrap-typeahead.js ADDED
@@ -0,0 +1,300 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* =============================================================
2
+ * bootstrap-typeahead.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#typeahead
4
+ * =============================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ============================================================ */
19
+
20
+
21
+ !function($){
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* TYPEAHEAD PUBLIC CLASS DEFINITION
27
+ * ================================= */
28
+
29
+ var Typeahead = function (element, options) {
30
+ this.$element = $(element)
31
+ this.options = $.extend({}, $.fn.typeahead.defaults, options)
32
+ this.matcher = this.options.matcher || this.matcher
33
+ this.sorter = this.options.sorter || this.sorter
34
+ this.highlighter = this.options.highlighter || this.highlighter
35
+ this.updater = this.options.updater || this.updater
36
+ this.$menu = $(this.options.menu).appendTo('body')
37
+ this.source = this.options.source
38
+ this.shown = false
39
+ this.listen()
40
+ }
41
+
42
+ Typeahead.prototype = {
43
+
44
+ constructor: Typeahead
45
+
46
+ , select: function () {
47
+ var val = this.$menu.find('.active').attr('data-value')
48
+ this.$element
49
+ .val(this.updater(val))
50
+ .change()
51
+ return this.hide()
52
+ }
53
+
54
+ , updater: function (item) {
55
+ return item
56
+ }
57
+
58
+ , show: function () {
59
+ var pos = $.extend({}, this.$element.offset(), {
60
+ height: this.$element[0].offsetHeight
61
+ })
62
+
63
+ this.$menu.css({
64
+ top: pos.top + pos.height
65
+ , left: pos.left
66
+ })
67
+
68
+ this.$menu.show()
69
+ this.shown = true
70
+ return this
71
+ }
72
+
73
+ , hide: function () {
74
+ this.$menu.hide()
75
+ this.shown = false
76
+ return this
77
+ }
78
+
79
+ , lookup: function (event) {
80
+ var items
81
+
82
+ this.query = this.$element.val()
83
+
84
+ if (!this.query || this.query.length < this.options.minLength) {
85
+ return this.shown ? this.hide() : this
86
+ }
87
+
88
+ items = $.isFunction(this.source) ? this.source(this.query, $.proxy(this.process, this)) : this.source
89
+
90
+ return items ? this.process(items) : this
91
+ }
92
+
93
+ , process: function (items) {
94
+ var that = this
95
+
96
+ items = $.grep(items, function (item) {
97
+ return that.matcher(item)
98
+ })
99
+
100
+ items = this.sorter(items)
101
+
102
+ if (!items.length) {
103
+ return this.shown ? this.hide() : this
104
+ }
105
+
106
+ return this.render(items.slice(0, this.options.items)).show()
107
+ }
108
+
109
+ , matcher: function (item) {
110
+ return ~item.toLowerCase().indexOf(this.query.toLowerCase())
111
+ }
112
+
113
+ , sorter: function (items) {
114
+ var beginswith = []
115
+ , caseSensitive = []
116
+ , caseInsensitive = []
117
+ , item
118
+
119
+ while (item = items.shift()) {
120
+ if (!item.toLowerCase().indexOf(this.query.toLowerCase())) beginswith.push(item)
121
+ else if (~item.indexOf(this.query)) caseSensitive.push(item)
122
+ else caseInsensitive.push(item)
123
+ }
124
+
125
+ return beginswith.concat(caseSensitive, caseInsensitive)
126
+ }
127
+
128
+ , highlighter: function (item) {
129
+ var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&')
130
+ return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
131
+ return '<strong>' + match + '</strong>'
132
+ })
133
+ }
134
+
135
+ , render: function (items) {
136
+ var that = this
137
+
138
+ items = $(items).map(function (i, item) {
139
+ i = $(that.options.item).attr('data-value', item)
140
+ i.find('a').html(that.highlighter(item))
141
+ return i[0]
142
+ })
143
+
144
+ items.first().addClass('active')
145
+ this.$menu.html(items)
146
+ return this
147
+ }
148
+
149
+ , next: function (event) {
150
+ var active = this.$menu.find('.active').removeClass('active')
151
+ , next = active.next()
152
+
153
+ if (!next.length) {
154
+ next = $(this.$menu.find('li')[0])
155
+ }
156
+
157
+ next.addClass('active')
158
+ }
159
+
160
+ , prev: function (event) {
161
+ var active = this.$menu.find('.active').removeClass('active')
162
+ , prev = active.prev()
163
+
164
+ if (!prev.length) {
165
+ prev = this.$menu.find('li').last()
166
+ }
167
+
168
+ prev.addClass('active')
169
+ }
170
+
171
+ , listen: function () {
172
+ this.$element
173
+ .on('blur', $.proxy(this.blur, this))
174
+ .on('keypress', $.proxy(this.keypress, this))
175
+ .on('keyup', $.proxy(this.keyup, this))
176
+
177
+ if ($.browser.chrome || $.browser.webkit || $.browser.msie) {
178
+ this.$element.on('keydown', $.proxy(this.keydown, this))
179
+ }
180
+
181
+ this.$menu
182
+ .on('click', $.proxy(this.click, this))
183
+ .on('mouseenter', 'li', $.proxy(this.mouseenter, this))
184
+ }
185
+
186
+ , move: function (e) {
187
+ if (!this.shown) return
188
+
189
+ switch(e.keyCode) {
190
+ case 9: // tab
191
+ case 13: // enter
192
+ case 27: // escape
193
+ e.preventDefault()
194
+ break
195
+
196
+ case 38: // up arrow
197
+ e.preventDefault()
198
+ this.prev()
199
+ break
200
+
201
+ case 40: // down arrow
202
+ e.preventDefault()
203
+ this.next()
204
+ break
205
+ }
206
+
207
+ e.stopPropagation()
208
+ }
209
+
210
+ , keydown: function (e) {
211
+ this.suppressKeyPressRepeat = !~$.inArray(e.keyCode, [40,38,9,13,27])
212
+ this.move(e)
213
+ }
214
+
215
+ , keypress: function (e) {
216
+ if (this.suppressKeyPressRepeat) return
217
+ this.move(e)
218
+ }
219
+
220
+ , keyup: function (e) {
221
+ switch(e.keyCode) {
222
+ case 40: // down arrow
223
+ case 38: // up arrow
224
+ break
225
+
226
+ case 9: // tab
227
+ case 13: // enter
228
+ if (!this.shown) return
229
+ this.select()
230
+ break
231
+
232
+ case 27: // escape
233
+ if (!this.shown) return
234
+ this.hide()
235
+ break
236
+
237
+ default:
238
+ this.lookup()
239
+ }
240
+
241
+ e.stopPropagation()
242
+ e.preventDefault()
243
+ }
244
+
245
+ , blur: function (e) {
246
+ var that = this
247
+ setTimeout(function () { that.hide() }, 150)
248
+ }
249
+
250
+ , click: function (e) {
251
+ e.stopPropagation()
252
+ e.preventDefault()
253
+ this.select()
254
+ }
255
+
256
+ , mouseenter: function (e) {
257
+ this.$menu.find('.active').removeClass('active')
258
+ $(e.currentTarget).addClass('active')
259
+ }
260
+
261
+ }
262
+
263
+
264
+ /* TYPEAHEAD PLUGIN DEFINITION
265
+ * =========================== */
266
+
267
+ $.fn.typeahead = function (option) {
268
+ return this.each(function () {
269
+ var $this = $(this)
270
+ , data = $this.data('typeahead')
271
+ , options = typeof option == 'object' && option
272
+ if (!data) $this.data('typeahead', (data = new Typeahead(this, options)))
273
+ if (typeof option == 'string') data[option]()
274
+ })
275
+ }
276
+
277
+ $.fn.typeahead.defaults = {
278
+ source: []
279
+ , items: 8
280
+ , menu: '<ul class="typeahead dropdown-menu"></ul>'
281
+ , item: '<li><a href="#"></a></li>'
282
+ , minLength: 1
283
+ }
284
+
285
+ $.fn.typeahead.Constructor = Typeahead
286
+
287
+
288
+ /* TYPEAHEAD DATA-API
289
+ * ================== */
290
+
291
+ $(function () {
292
+ $('body').on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
293
+ var $this = $(this)
294
+ if ($this.data('typeahead')) return
295
+ e.preventDefault()
296
+ $this.typeahead($this.data())
297
+ })
298
+ })
299
+
300
+ }(window.jQuery);
js/bootstrap/bootstrap.js ADDED
@@ -0,0 +1,2027 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ===================================================
2
+ * bootstrap-transition.js v2.1.1
3
+ * http://twitter.github.com/bootstrap/javascript.html#transitions
4
+ * ===================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ========================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ $(function () {
24
+
25
+ "use strict"; // jshint ;_;
26
+
27
+
28
+ /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
29
+ * ======================================================= */
30
+
31
+ $.support.transition = (function () {
32
+
33
+ var transitionEnd = (function () {
34
+
35
+ var el = document.createElement('bootstrap')
36
+ , transEndEventNames = {
37
+ 'WebkitTransition' : 'webkitTransitionEnd'
38
+ , 'MozTransition' : 'transitionend'
39
+ , 'OTransition' : 'oTransitionEnd otransitionend'
40
+ , 'transition' : 'transitionend'
41
+ }
42
+ , name
43
+
44
+ for (name in transEndEventNames){
45
+ if (el.style[name] !== undefined) {
46
+ return transEndEventNames[name]
47
+ }
48
+ }
49
+
50
+ }())
51
+
52
+ return transitionEnd && {
53
+ end: transitionEnd
54
+ }
55
+
56
+ })()
57
+
58
+ })
59
+
60
+ }(window.jQuery);/* ==========================================================
61
+ * bootstrap-alert.js v2.1.1
62
+ * http://twitter.github.com/bootstrap/javascript.html#alerts
63
+ * ==========================================================
64
+ * Copyright 2012 Twitter, Inc.
65
+ *
66
+ * Licensed under the Apache License, Version 2.0 (the "License");
67
+ * you may not use this file except in compliance with the License.
68
+ * You may obtain a copy of the License at
69
+ *
70
+ * http://www.apache.org/licenses/LICENSE-2.0
71
+ *
72
+ * Unless required by applicable law or agreed to in writing, software
73
+ * distributed under the License is distributed on an "AS IS" BASIS,
74
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
75
+ * See the License for the specific language governing permissions and
76
+ * limitations under the License.
77
+ * ========================================================== */
78
+
79
+
80
+ !function ($) {
81
+
82
+ "use strict"; // jshint ;_;
83
+
84
+
85
+ /* ALERT CLASS DEFINITION
86
+ * ====================== */
87
+
88
+ var dismiss = '[data-dismiss="alert"]'
89
+ , Alert = function (el) {
90
+ $(el).on('click', dismiss, this.close)
91
+ }
92
+
93
+ Alert.prototype.close = function (e) {
94
+ var $this = $(this)
95
+ , selector = $this.attr('data-target')
96
+ , $parent
97
+
98
+ if (!selector) {
99
+ selector = $this.attr('href')
100
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
101
+ }
102
+
103
+ $parent = $(selector)
104
+
105
+ e && e.preventDefault()
106
+
107
+ $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
108
+
109
+ $parent.trigger(e = $.Event('close'))
110
+
111
+ if (e.isDefaultPrevented()) return
112
+
113
+ $parent.removeClass('in')
114
+
115
+ function removeElement() {
116
+ $parent
117
+ .trigger('closed')
118
+ .remove()
119
+ }
120
+
121
+ $.support.transition && $parent.hasClass('fade') ?
122
+ $parent.on($.support.transition.end, removeElement) :
123
+ removeElement()
124
+ }
125
+
126
+
127
+ /* ALERT PLUGIN DEFINITION
128
+ * ======================= */
129
+
130
+ $.fn.alert = function (option) {
131
+ return this.each(function () {
132
+ var $this = $(this)
133
+ , data = $this.data('alert')
134
+ if (!data) $this.data('alert', (data = new Alert(this)))
135
+ if (typeof option == 'string') data[option].call($this)
136
+ })
137
+ }
138
+
139
+ $.fn.alert.Constructor = Alert
140
+
141
+
142
+ /* ALERT DATA-API
143
+ * ============== */
144
+
145
+ $(function () {
146
+ $('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
147
+ })
148
+
149
+ }(window.jQuery);/* ============================================================
150
+ * bootstrap-button.js v2.1.1
151
+ * http://twitter.github.com/bootstrap/javascript.html#buttons
152
+ * ============================================================
153
+ * Copyright 2012 Twitter, Inc.
154
+ *
155
+ * Licensed under the Apache License, Version 2.0 (the "License");
156
+ * you may not use this file except in compliance with the License.
157
+ * You may obtain a copy of the License at
158
+ *
159
+ * http://www.apache.org/licenses/LICENSE-2.0
160
+ *
161
+ * Unless required by applicable law or agreed to in writing, software
162
+ * distributed under the License is distributed on an "AS IS" BASIS,
163
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
164
+ * See the License for the specific language governing permissions and
165
+ * limitations under the License.
166
+ * ============================================================ */
167
+
168
+
169
+ !function ($) {
170
+
171
+ "use strict"; // jshint ;_;
172
+
173
+
174
+ /* BUTTON PUBLIC CLASS DEFINITION
175
+ * ============================== */
176
+
177
+ var Button = function (element, options) {
178
+ this.$element = $(element)
179
+ this.options = $.extend({}, $.fn.button.defaults, options)
180
+ }
181
+
182
+ Button.prototype.setState = function (state) {
183
+ var d = 'disabled'
184
+ , $el = this.$element
185
+ , data = $el.data()
186
+ , val = $el.is('input') ? 'val' : 'html'
187
+
188
+ state = state + 'Text'
189
+ data.resetText || $el.data('resetText', $el[val]())
190
+
191
+ $el[val](data[state] || this.options[state])
192
+
193
+ // push to event loop to allow forms to submit
194
+ setTimeout(function () {
195
+ state == 'loadingText' ?
196
+ $el.addClass(d).attr(d, d) :
197
+ $el.removeClass(d).removeAttr(d)
198
+ }, 0)
199
+ }
200
+
201
+ Button.prototype.toggle = function () {
202
+ var $parent = this.$element.closest('[data-toggle="buttons-radio"]')
203
+
204
+ $parent && $parent
205
+ .find('.active')
206
+ .removeClass('active')
207
+
208
+ this.$element.toggleClass('active')
209
+ }
210
+
211
+
212
+ /* BUTTON PLUGIN DEFINITION
213
+ * ======================== */
214
+
215
+ $.fn.button = function (option) {
216
+ return this.each(function () {
217
+ var $this = $(this)
218
+ , data = $this.data('button')
219
+ , options = typeof option == 'object' && option
220
+ if (!data) $this.data('button', (data = new Button(this, options)))
221
+ if (option == 'toggle') data.toggle()
222
+ else if (option) data.setState(option)
223
+ })
224
+ }
225
+
226
+ $.fn.button.defaults = {
227
+ loadingText: 'loading...'
228
+ }
229
+
230
+ $.fn.button.Constructor = Button
231
+
232
+
233
+ /* BUTTON DATA-API
234
+ * =============== */
235
+
236
+ $(function () {
237
+ $('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
238
+ var $btn = $(e.target)
239
+ if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
240
+ $btn.button('toggle')
241
+ })
242
+ })
243
+
244
+ }(window.jQuery);/* ==========================================================
245
+ * bootstrap-carousel.js v2.1.1
246
+ * http://twitter.github.com/bootstrap/javascript.html#carousel
247
+ * ==========================================================
248
+ * Copyright 2012 Twitter, Inc.
249
+ *
250
+ * Licensed under the Apache License, Version 2.0 (the "License");
251
+ * you may not use this file except in compliance with the License.
252
+ * You may obtain a copy of the License at
253
+ *
254
+ * http://www.apache.org/licenses/LICENSE-2.0
255
+ *
256
+ * Unless required by applicable law or agreed to in writing, software
257
+ * distributed under the License is distributed on an "AS IS" BASIS,
258
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
259
+ * See the License for the specific language governing permissions and
260
+ * limitations under the License.
261
+ * ========================================================== */
262
+
263
+
264
+ !function ($) {
265
+
266
+ "use strict"; // jshint ;_;
267
+
268
+
269
+ /* CAROUSEL CLASS DEFINITION
270
+ * ========================= */
271
+
272
+ var Carousel = function (element, options) {
273
+ this.$element = $(element)
274
+ this.options = options
275
+ this.options.slide && this.slide(this.options.slide)
276
+ this.options.pause == 'hover' && this.$element
277
+ .on('mouseenter', $.proxy(this.pause, this))
278
+ .on('mouseleave', $.proxy(this.cycle, this))
279
+ }
280
+
281
+ Carousel.prototype = {
282
+
283
+ cycle: function (e) {
284
+ if (!e) this.paused = false
285
+ this.options.interval
286
+ && !this.paused
287
+ && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
288
+ return this
289
+ }
290
+
291
+ , to: function (pos) {
292
+ var $active = this.$element.find('.item.active')
293
+ , children = $active.parent().children()
294
+ , activePos = children.index($active)
295
+ , that = this
296
+
297
+ if (pos > (children.length - 1) || pos < 0) return
298
+
299
+ if (this.sliding) {
300
+ return this.$element.one('slid', function () {
301
+ that.to(pos)
302
+ })
303
+ }
304
+
305
+ if (activePos == pos) {
306
+ return this.pause().cycle()
307
+ }
308
+
309
+ return this.slide(pos > activePos ? 'next' : 'prev', $(children[pos]))
310
+ }
311
+
312
+ , pause: function (e) {
313
+ if (!e) this.paused = true
314
+ if (this.$element.find('.next, .prev').length && $.support.transition.end) {
315
+ this.$element.trigger($.support.transition.end)
316
+ this.cycle()
317
+ }
318
+ clearInterval(this.interval)
319
+ this.interval = null
320
+ return this
321
+ }
322
+
323
+ , next: function () {
324
+ if (this.sliding) return
325
+ return this.slide('next')
326
+ }
327
+
328
+ , prev: function () {
329
+ if (this.sliding) return
330
+ return this.slide('prev')
331
+ }
332
+
333
+ , slide: function (type, next) {
334
+ var $active = this.$element.find('.item.active')
335
+ , $next = next || $active[type]()
336
+ , isCycling = this.interval
337
+ , direction = type == 'next' ? 'left' : 'right'
338
+ , fallback = type == 'next' ? 'first' : 'last'
339
+ , that = this
340
+ , e = $.Event('slide', {
341
+ relatedTarget: $next[0]
342
+ })
343
+
344
+ this.sliding = true
345
+
346
+ isCycling && this.pause()
347
+
348
+ $next = $next.length ? $next : this.$element.find('.item')[fallback]()
349
+
350
+ if ($next.hasClass('active')) return
351
+
352
+ if ($.support.transition && this.$element.hasClass('slide')) {
353
+ this.$element.trigger(e)
354
+ if (e.isDefaultPrevented()) return
355
+ $next.addClass(type)
356
+ $next[0].offsetWidth // force reflow
357
+ $active.addClass(direction)
358
+ $next.addClass(direction)
359
+ this.$element.one($.support.transition.end, function () {
360
+ $next.removeClass([type, direction].join(' ')).addClass('active')
361
+ $active.removeClass(['active', direction].join(' '))
362
+ that.sliding = false
363
+ setTimeout(function () { that.$element.trigger('slid') }, 0)
364
+ })
365
+ } else {
366
+ this.$element.trigger(e)
367
+ if (e.isDefaultPrevented()) return
368
+ $active.removeClass('active')
369
+ $next.addClass('active')
370
+ this.sliding = false
371
+ this.$element.trigger('slid')
372
+ }
373
+
374
+ isCycling && this.cycle()
375
+
376
+ return this
377
+ }
378
+
379
+ }
380
+
381
+
382
+ /* CAROUSEL PLUGIN DEFINITION
383
+ * ========================== */
384
+
385
+ $.fn.carousel = function (option) {
386
+ return this.each(function () {
387
+ var $this = $(this)
388
+ , data = $this.data('carousel')
389
+ , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
390
+ , action = typeof option == 'string' ? option : options.slide
391
+ if (!data) $this.data('carousel', (data = new Carousel(this, options)))
392
+ if (typeof option == 'number') data.to(option)
393
+ else if (action) data[action]()
394
+ else if (options.interval) data.cycle()
395
+ })
396
+ }
397
+
398
+ $.fn.carousel.defaults = {
399
+ interval: 5000
400
+ , pause: 'hover'
401
+ }
402
+
403
+ $.fn.carousel.Constructor = Carousel
404
+
405
+
406
+ /* CAROUSEL DATA-API
407
+ * ================= */
408
+
409
+ $(function () {
410
+ $('body').on('click.carousel.data-api', '[data-slide]', function ( e ) {
411
+ var $this = $(this), href
412
+ , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
413
+ , options = !$target.data('modal') && $.extend({}, $target.data(), $this.data())
414
+ $target.carousel(options)
415
+ e.preventDefault()
416
+ })
417
+ })
418
+
419
+ }(window.jQuery);/* =============================================================
420
+ * bootstrap-collapse.js v2.1.1
421
+ * http://twitter.github.com/bootstrap/javascript.html#collapse
422
+ * =============================================================
423
+ * Copyright 2012 Twitter, Inc.
424
+ *
425
+ * Licensed under the Apache License, Version 2.0 (the "License");
426
+ * you may not use this file except in compliance with the License.
427
+ * You may obtain a copy of the License at
428
+ *
429
+ * http://www.apache.org/licenses/LICENSE-2.0
430
+ *
431
+ * Unless required by applicable law or agreed to in writing, software
432
+ * distributed under the License is distributed on an "AS IS" BASIS,
433
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
434
+ * See the License for the specific language governing permissions and
435
+ * limitations under the License.
436
+ * ============================================================ */
437
+
438
+
439
+ !function ($) {
440
+
441
+ "use strict"; // jshint ;_;
442
+
443
+
444
+ /* COLLAPSE PUBLIC CLASS DEFINITION
445
+ * ================================ */
446
+
447
+ var Collapse = function (element, options) {
448
+ this.$element = $(element)
449
+ this.options = $.extend({}, $.fn.collapse.defaults, options)
450
+
451
+ if (this.options.parent) {
452
+ this.$parent = $(this.options.parent)
453
+ }
454
+
455
+ this.options.toggle && this.toggle()
456
+ }
457
+
458
+ Collapse.prototype = {
459
+
460
+ constructor: Collapse
461
+
462
+ , dimension: function () {
463
+ var hasWidth = this.$element.hasClass('width')
464
+ return hasWidth ? 'width' : 'height'
465
+ }
466
+
467
+ , show: function () {
468
+ var dimension
469
+ , scroll
470
+ , actives
471
+ , hasData
472
+
473
+ if (this.transitioning) return
474
+
475
+ dimension = this.dimension()
476
+ scroll = $.camelCase(['scroll', dimension].join('-'))
477
+ actives = this.$parent && this.$parent.find('> .accordion-group > .in')
478
+
479
+ if (actives && actives.length) {
480
+ hasData = actives.data('collapse')
481
+ if (hasData && hasData.transitioning) return
482
+ actives.collapse('hide')
483
+ hasData || actives.data('collapse', null)
484
+ }
485
+
486
+ this.$element[dimension](0)
487
+ this.transition('addClass', $.Event('show'), 'shown')
488
+ $.support.transition && this.$element[dimension](this.$element[0][scroll])
489
+ }
490
+
491
+ , hide: function () {
492
+ var dimension
493
+ if (this.transitioning) return
494
+ dimension = this.dimension()
495
+ this.reset(this.$element[dimension]())
496
+ this.transition('removeClass', $.Event('hide'), 'hidden')
497
+ this.$element[dimension](0)
498
+ }
499
+
500
+ , reset: function (size) {
501
+ var dimension = this.dimension()
502
+
503
+ this.$element
504
+ .removeClass('collapse')
505
+ [dimension](size || 'auto')
506
+ [0].offsetWidth
507
+
508
+ this.$element[size !== null ? 'addClass' : 'removeClass']('collapse')
509
+
510
+ return this
511
+ }
512
+
513
+ , transition: function (method, startEvent, completeEvent) {
514
+ var that = this
515
+ , complete = function () {
516
+ if (startEvent.type == 'show') that.reset()
517
+ that.transitioning = 0
518
+ that.$element.trigger(completeEvent)
519
+ }
520
+
521
+ this.$element.trigger(startEvent)
522
+
523
+ if (startEvent.isDefaultPrevented()) return
524
+
525
+ this.transitioning = 1
526
+
527
+ this.$element[method]('in')
528
+
529
+ $.support.transition && this.$element.hasClass('collapse') ?
530
+ this.$element.one($.support.transition.end, complete) :
531
+ complete()
532
+ }
533
+
534
+ , toggle: function () {
535
+ this[this.$element.hasClass('in') ? 'hide' : 'show']()
536
+ }
537
+
538
+ }
539
+
540
+
541
+ /* COLLAPSIBLE PLUGIN DEFINITION
542
+ * ============================== */
543
+
544
+ $.fn.collapse = function (option) {
545
+ return this.each(function () {
546
+ var $this = $(this)
547
+ , data = $this.data('collapse')
548
+ , options = typeof option == 'object' && option
549
+ if (!data) $this.data('collapse', (data = new Collapse(this, options)))
550
+ if (typeof option == 'string') data[option]()
551
+ })
552
+ }
553
+
554
+ $.fn.collapse.defaults = {
555
+ toggle: true
556
+ }
557
+
558
+ $.fn.collapse.Constructor = Collapse
559
+
560
+
561
+ /* COLLAPSIBLE DATA-API
562
+ * ==================== */
563
+
564
+ $(function () {
565
+ $('body').on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
566
+ var $this = $(this), href
567
+ , target = $this.attr('data-target')
568
+ || e.preventDefault()
569
+ || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
570
+ , option = $(target).data('collapse') ? 'toggle' : $this.data()
571
+ $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
572
+ $(target).collapse(option)
573
+ })
574
+ })
575
+
576
+ }(window.jQuery);/* ============================================================
577
+ * bootstrap-dropdown.js v2.1.1
578
+ * http://twitter.github.com/bootstrap/javascript.html#dropdowns
579
+ * ============================================================
580
+ * Copyright 2012 Twitter, Inc.
581
+ *
582
+ * Licensed under the Apache License, Version 2.0 (the "License");
583
+ * you may not use this file except in compliance with the License.
584
+ * You may obtain a copy of the License at
585
+ *
586
+ * http://www.apache.org/licenses/LICENSE-2.0
587
+ *
588
+ * Unless required by applicable law or agreed to in writing, software
589
+ * distributed under the License is distributed on an "AS IS" BASIS,
590
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
591
+ * See the License for the specific language governing permissions and
592
+ * limitations under the License.
593
+ * ============================================================ */
594
+
595
+
596
+ !function ($) {
597
+
598
+ "use strict"; // jshint ;_;
599
+
600
+
601
+ /* DROPDOWN CLASS DEFINITION
602
+ * ========================= */
603
+
604
+ var toggle = '[data-toggle=dropdown]'
605
+ , Dropdown = function (element) {
606
+ var $el = $(element).on('click.dropdown.data-api', this.toggle)
607
+ $('html').on('click.dropdown.data-api', function () {
608
+ $el.parent().removeClass('open')
609
+ })
610
+ }
611
+
612
+ Dropdown.prototype = {
613
+
614
+ constructor: Dropdown
615
+
616
+ , toggle: function (e) {
617
+ var $this = $(this)
618
+ , $parent
619
+ , isActive
620
+
621
+ if ($this.is('.disabled, :disabled')) return
622
+
623
+ $parent = getParent($this)
624
+
625
+ isActive = $parent.hasClass('open')
626
+
627
+ clearMenus()
628
+
629
+ if (!isActive) {
630
+ $parent.toggleClass('open')
631
+ $this.focus()
632
+ }
633
+
634
+ return false
635
+ }
636
+
637
+ , keydown: function (e) {
638
+ var $this
639
+ , $items
640
+ , $active
641
+ , $parent
642
+ , isActive
643
+ , index
644
+
645
+ if (!/(38|40|27)/.test(e.keyCode)) return
646
+
647
+ $this = $(this)
648
+
649
+ e.preventDefault()
650
+ e.stopPropagation()
651
+
652
+ if ($this.is('.disabled, :disabled')) return
653
+
654
+ $parent = getParent($this)
655
+
656
+ isActive = $parent.hasClass('open')
657
+
658
+ if (!isActive || (isActive && e.keyCode == 27)) return $this.click()
659
+
660
+ $items = $('[role=menu] li:not(.divider) a', $parent)
661
+
662
+ if (!$items.length) return
663
+
664
+ index = $items.index($items.filter(':focus'))
665
+
666
+ if (e.keyCode == 38 && index > 0) index-- // up
667
+ if (e.keyCode == 40 && index < $items.length - 1) index++ // down
668
+ if (!~index) index = 0
669
+
670
+ $items
671
+ .eq(index)
672
+ .focus()
673
+ }
674
+
675
+ }
676
+
677
+ function clearMenus() {
678
+ getParent($(toggle))
679
+ .removeClass('open')
680
+ }
681
+
682
+ function getParent($this) {
683
+ var selector = $this.attr('data-target')
684
+ , $parent
685
+
686
+ if (!selector) {
687
+ selector = $this.attr('href')
688
+ selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
689
+ }
690
+
691
+ $parent = $(selector)
692
+ $parent.length || ($parent = $this.parent())
693
+
694
+ return $parent
695
+ }
696
+
697
+
698
+ /* DROPDOWN PLUGIN DEFINITION
699
+ * ========================== */
700
+
701
+ $.fn.dropdown = function (option) {
702
+ return this.each(function () {
703
+ var $this = $(this)
704
+ , data = $this.data('dropdown')
705
+ if (!data) $this.data('dropdown', (data = new Dropdown(this)))
706
+ if (typeof option == 'string') data[option].call($this)
707
+ })
708
+ }
709
+
710
+ $.fn.dropdown.Constructor = Dropdown
711
+
712
+
713
+ /* APPLY TO STANDARD DROPDOWN ELEMENTS
714
+ * =================================== */
715
+
716
+ $(function () {
717
+ $('html')
718
+ .on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus)
719
+ $('body')
720
+ .on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
721
+ .on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
722
+ .on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
723
+ })
724
+
725
+ }(window.jQuery);/* =========================================================
726
+ * bootstrap-modal.js v2.1.1
727
+ * http://twitter.github.com/bootstrap/javascript.html#modals
728
+ * =========================================================
729
+ * Copyright 2012 Twitter, Inc.
730
+ *
731
+ * Licensed under the Apache License, Version 2.0 (the "License");
732
+ * you may not use this file except in compliance with the License.
733
+ * You may obtain a copy of the License at
734
+ *
735
+ * http://www.apache.org/licenses/LICENSE-2.0
736
+ *
737
+ * Unless required by applicable law or agreed to in writing, software
738
+ * distributed under the License is distributed on an "AS IS" BASIS,
739
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
740
+ * See the License for the specific language governing permissions and
741
+ * limitations under the License.
742
+ * ========================================================= */
743
+
744
+
745
+ !function ($) {
746
+
747
+ "use strict"; // jshint ;_;
748
+
749
+
750
+ /* MODAL CLASS DEFINITION
751
+ * ====================== */
752
+
753
+ var Modal = function (element, options) {
754
+ this.options = options
755
+ this.$element = $(element)
756
+ .delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
757
+ this.options.remote && this.$element.find('.modal-body').load(this.options.remote)
758
+ }
759
+
760
+ Modal.prototype = {
761
+
762
+ constructor: Modal
763
+
764
+ , toggle: function () {
765
+ return this[!this.isShown ? 'show' : 'hide']()
766
+ }
767
+
768
+ , show: function () {
769
+ var that = this
770
+ , e = $.Event('show')
771
+
772
+ this.$element.trigger(e)
773
+
774
+ if (this.isShown || e.isDefaultPrevented()) return
775
+
776
+ $('body').addClass('modal-open')
777
+
778
+ this.isShown = true
779
+
780
+ this.escape()
781
+
782
+ this.backdrop(function () {
783
+ var transition = $.support.transition && that.$element.hasClass('fade')
784
+
785
+ if (!that.$element.parent().length) {
786
+ that.$element.appendTo(document.body) //don't move modals dom position
787
+ }
788
+
789
+ that.$element
790
+ .show()
791
+
792
+ if (transition) {
793
+ that.$element[0].offsetWidth // force reflow
794
+ }
795
+
796
+ that.$element
797
+ .addClass('in')
798
+ .attr('aria-hidden', false)
799
+ .focus()
800
+
801
+ that.enforceFocus()
802
+
803
+ transition ?
804
+ that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
805
+ that.$element.trigger('shown')
806
+
807
+ })
808
+ }
809
+
810
+ , hide: function (e) {
811
+ e && e.preventDefault()
812
+
813
+ var that = this
814
+
815
+ e = $.Event('hide')
816
+
817
+ this.$element.trigger(e)
818
+
819
+ if (!this.isShown || e.isDefaultPrevented()) return
820
+
821
+ this.isShown = false
822
+
823
+ $('body').removeClass('modal-open')
824
+
825
+ this.escape()
826
+
827
+ $(document).off('focusin.modal')
828
+
829
+ this.$element
830
+ .removeClass('in')
831
+ .attr('aria-hidden', true)
832
+
833
+ $.support.transition && this.$element.hasClass('fade') ?
834
+ this.hideWithTransition() :
835
+ this.hideModal()
836
+ }
837
+
838
+ , enforceFocus: function () {
839
+ var that = this
840
+ $(document).on('focusin.modal', function (e) {
841
+ if (that.$element[0] !== e.target && !that.$element.has(e.target).length) {
842
+ that.$element.focus()
843
+ }
844
+ })
845
+ }
846
+
847
+ , escape: function () {
848
+ var that = this
849
+ if (this.isShown && this.options.keyboard) {
850
+ this.$element.on('keyup.dismiss.modal', function ( e ) {
851
+ e.which == 27 && that.hide()
852
+ })
853
+ } else if (!this.isShown) {
854
+ this.$element.off('keyup.dismiss.modal')
855
+ }
856
+ }
857
+
858
+ , hideWithTransition: function () {
859
+ var that = this
860
+ , timeout = setTimeout(function () {
861
+ that.$element.off($.support.transition.end)
862
+ that.hideModal()
863
+ }, 500)
864
+
865
+ this.$element.one($.support.transition.end, function () {
866
+ clearTimeout(timeout)
867
+ that.hideModal()
868
+ })
869
+ }
870
+
871
+ , hideModal: function (that) {
872
+ this.$element
873
+ .hide()
874
+ .trigger('hidden')
875
+
876
+ this.backdrop()
877
+ }
878
+
879
+ , removeBackdrop: function () {
880
+ this.$backdrop.remove()
881
+ this.$backdrop = null
882
+ }
883
+
884
+ , backdrop: function (callback) {
885
+ var that = this
886
+ , animate = this.$element.hasClass('fade') ? 'fade' : ''
887
+
888
+ if (this.isShown && this.options.backdrop) {
889
+ var doAnimate = $.support.transition && animate
890
+
891
+ this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
892
+ .appendTo(document.body)
893
+
894
+ if (this.options.backdrop != 'static') {
895
+ this.$backdrop.click($.proxy(this.hide, this))
896
+ }
897
+
898
+ if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
899
+
900
+ this.$backdrop.addClass('in')
901
+
902
+ doAnimate ?
903
+ this.$backdrop.one($.support.transition.end, callback) :
904
+ callback()
905
+
906
+ } else if (!this.isShown && this.$backdrop) {
907
+ this.$backdrop.removeClass('in')
908
+
909
+ $.support.transition && this.$element.hasClass('fade')?
910
+ this.$backdrop.one($.support.transition.end, $.proxy(this.removeBackdrop, this)) :
911
+ this.removeBackdrop()
912
+
913
+ } else if (callback) {
914
+ callback()
915
+ }
916
+ }
917
+ }
918
+
919
+
920
+ /* MODAL PLUGIN DEFINITION
921
+ * ======================= */
922
+
923
+ $.fn.modal = function (option) {
924
+ return this.each(function () {
925
+ var $this = $(this)
926
+ , data = $this.data('modal')
927
+ , options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option)
928
+ if (!data) $this.data('modal', (data = new Modal(this, options)))
929
+ if (typeof option == 'string') data[option]()
930
+ else if (options.show) data.show()
931
+ })
932
+ }
933
+
934
+ $.fn.modal.defaults = {
935
+ backdrop: true
936
+ , keyboard: true
937
+ , show: true
938
+ }
939
+
940
+ $.fn.modal.Constructor = Modal
941
+
942
+
943
+ /* MODAL DATA-API
944
+ * ============== */
945
+
946
+ $(function () {
947
+ $('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) {
948
+ var $this = $(this)
949
+ , href = $this.attr('href')
950
+ , $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
951
+ , option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
952
+
953
+ e.preventDefault()
954
+
955
+ $target
956
+ .modal(option)
957
+ .one('hide', function () {
958
+ $this.focus()
959
+ })
960
+ })
961
+ })
962
+
963
+ }(window.jQuery);/* ===========================================================
964
+ * bootstrap-tooltip.js v2.1.1
965
+ * http://twitter.github.com/bootstrap/javascript.html#tooltips
966
+ * Inspired by the original jQuery.tipsy by Jason Frame
967
+ * ===========================================================
968
+ * Copyright 2012 Twitter, Inc.
969
+ *
970
+ * Licensed under the Apache License, Version 2.0 (the "License");
971
+ * you may not use this file except in compliance with the License.
972
+ * You may obtain a copy of the License at
973
+ *
974
+ * http://www.apache.org/licenses/LICENSE-2.0
975
+ *
976
+ * Unless required by applicable law or agreed to in writing, software
977
+ * distributed under the License is distributed on an "AS IS" BASIS,
978
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
979
+ * See the License for the specific language governing permissions and
980
+ * limitations under the License.
981
+ * ========================================================== */
982
+
983
+
984
+ !function ($) {
985
+
986
+ "use strict"; // jshint ;_;
987
+
988
+
989
+ /* TOOLTIP PUBLIC CLASS DEFINITION
990
+ * =============================== */
991
+
992
+ var Tooltip = function (element, options) {
993
+ this.init('tooltip', element, options)
994
+ }
995
+
996
+ Tooltip.prototype = {
997
+
998
+ constructor: Tooltip
999
+
1000
+ , init: function (type, element, options) {
1001
+ var eventIn
1002
+ , eventOut
1003
+
1004
+ this.type = type
1005
+ this.$element = $(element)
1006
+ this.options = this.getOptions(options)
1007
+ this.enabled = true
1008
+
1009
+ if (this.options.trigger == 'click') {
1010
+ this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
1011
+ } else if (this.options.trigger != 'manual') {
1012
+ eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus'
1013
+ eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur'
1014
+ this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
1015
+ this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
1016
+ }
1017
+
1018
+ this.options.selector ?
1019
+ (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
1020
+ this.fixTitle()
1021
+ }
1022
+
1023
+ , getOptions: function (options) {
1024
+ options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data())
1025
+
1026
+ if (options.delay && typeof options.delay == 'number') {
1027
+ options.delay = {
1028
+ show: options.delay
1029
+ , hide: options.delay
1030
+ }
1031
+ }
1032
+
1033
+ return options
1034
+ }
1035
+
1036
+ , enter: function (e) {
1037
+ var self = $(e.currentTarget)[this.type](this._options).data(this.type)
1038
+
1039
+ if (!self.options.delay || !self.options.delay.show) return self.show()
1040
+
1041
+ clearTimeout(this.timeout)
1042
+ self.hoverState = 'in'
1043
+ this.timeout = setTimeout(function() {
1044
+ if (self.hoverState == 'in') self.show()
1045
+ }, self.options.delay.show)
1046
+ }
1047
+
1048
+ , leave: function (e) {
1049
+ var self = $(e.currentTarget)[this.type](this._options).data(this.type)
1050
+
1051
+ if (this.timeout) clearTimeout(this.timeout)
1052
+ if (!self.options.delay || !self.options.delay.hide) return self.hide()
1053
+
1054
+ self.hoverState = 'out'
1055
+ this.timeout = setTimeout(function() {
1056
+ if (self.hoverState == 'out') self.hide()
1057
+ }, self.options.delay.hide)
1058
+ }
1059
+
1060
+ , show: function () {
1061
+ var $tip
1062
+ , inside
1063
+ , pos
1064
+ , actualWidth
1065
+ , actualHeight
1066
+ , placement
1067
+ , tp
1068
+
1069
+ if (this.hasContent() && this.enabled) {
1070
+ $tip = this.tip()
1071
+ this.setContent()
1072
+
1073
+ if (this.options.animation) {
1074
+ $tip.addClass('fade')
1075
+ }
1076
+
1077
+ placement = typeof this.options.placement == 'function' ?
1078
+ this.options.placement.call(this, $tip[0], this.$element[0]) :
1079
+ this.options.placement
1080
+
1081
+ inside = /in/.test(placement)
1082
+
1083
+ $tip
1084
+ .remove()
1085
+ .css({ top: 0, left: 0, display: 'block' })
1086
+ .appendTo(inside ? this.$element : document.body)
1087
+
1088
+ pos = this.getPosition(inside)
1089
+
1090
+ actualWidth = $tip[0].offsetWidth
1091
+ actualHeight = $tip[0].offsetHeight
1092
+
1093
+ switch (inside ? placement.split(' ')[1] : placement) {
1094
+ case 'bottom':
1095
+ tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}
1096
+ break
1097
+ case 'top':
1098
+ tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}
1099
+ break
1100
+ case 'left':
1101
+ tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}
1102
+ break
1103
+ case 'right':
1104
+ tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}
1105
+ break
1106
+ }
1107
+
1108
+ $tip
1109
+ .css(tp)
1110
+ .addClass(placement)
1111
+ .addClass('in')
1112
+ }
1113
+ }
1114
+
1115
+ , setContent: function () {
1116
+ var $tip = this.tip()
1117
+ , title = this.getTitle()
1118
+
1119
+ $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
1120
+ $tip.removeClass('fade in top bottom left right')
1121
+ }
1122
+
1123
+ , hide: function () {
1124
+ var that = this
1125
+ , $tip = this.tip()
1126
+
1127
+ $tip.removeClass('in')
1128
+
1129
+ function removeWithAnimation() {
1130
+ var timeout = setTimeout(function () {
1131
+ $tip.off($.support.transition.end).remove()
1132
+ }, 500)
1133
+
1134
+ $tip.one($.support.transition.end, function () {
1135
+ clearTimeout(timeout)
1136
+ $tip.remove()
1137
+ })
1138
+ }
1139
+
1140
+ $.support.transition && this.$tip.hasClass('fade') ?
1141
+ removeWithAnimation() :
1142
+ $tip.remove()
1143
+
1144
+ return this
1145
+ }
1146
+
1147
+ , fixTitle: function () {
1148
+ var $e = this.$element
1149
+ if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
1150
+ $e.attr('data-original-title', $e.attr('title') || '').removeAttr('title')
1151
+ }
1152
+ }
1153
+
1154
+ , hasContent: function () {
1155
+ return this.getTitle()
1156
+ }
1157
+
1158
+ , getPosition: function (inside) {
1159
+ return $.extend({}, (inside ? {top: 0, left: 0} : this.$element.offset()), {
1160
+ width: this.$element[0].offsetWidth
1161
+ , height: this.$element[0].offsetHeight
1162
+ })
1163
+ }
1164
+
1165
+ , getTitle: function () {
1166
+ var title
1167
+ , $e = this.$element
1168
+ , o = this.options
1169
+
1170
+ title = $e.attr('data-original-title')
1171
+ || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
1172
+
1173
+ return title
1174
+ }
1175
+
1176
+ , tip: function () {
1177
+ return this.$tip = this.$tip || $(this.options.template)
1178
+ }
1179
+
1180
+ , validate: function () {
1181
+ if (!this.$element[0].parentNode) {
1182
+ this.hide()
1183
+ this.$element = null
1184
+ this.options = null
1185
+ }
1186
+ }
1187
+
1188
+ , enable: function () {
1189
+ this.enabled = true
1190
+ }
1191
+
1192
+ , disable: function () {
1193
+ this.enabled = false
1194
+ }
1195
+
1196
+ , toggleEnabled: function () {
1197
+ this.enabled = !this.enabled
1198
+ }
1199
+
1200
+ , toggle: function () {
1201
+ this[this.tip().hasClass('in') ? 'hide' : 'show']()
1202
+ }
1203
+
1204
+ , destroy: function () {
1205
+ this.hide().$element.off('.' + this.type).removeData(this.type)
1206
+ }
1207
+
1208
+ }
1209
+
1210
+
1211
+ /* TOOLTIP PLUGIN DEFINITION
1212
+ * ========================= */
1213
+
1214
+ $.fn.tooltip = function ( option ) {
1215
+ return this.each(function () {
1216
+ var $this = $(this)
1217
+ , data = $this.data('tooltip')
1218
+ , options = typeof option == 'object' && option
1219
+ if (!data) $this.data('tooltip', (data = new Tooltip(this, options)))
1220
+ if (typeof option == 'string') data[option]()
1221
+ })
1222
+ }
1223
+
1224
+ $.fn.tooltip.Constructor = Tooltip
1225
+
1226
+ $.fn.tooltip.defaults = {
1227
+ animation: true
1228
+ , placement: 'top'
1229
+ , selector: false
1230
+ , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
1231
+ , trigger: 'hover'
1232
+ , title: ''
1233
+ , delay: 0
1234
+ , html: true
1235
+ }
1236
+
1237
+ }(window.jQuery);
1238
+ /* ===========================================================
1239
+ * bootstrap-popover.js v2.1.1
1240
+ * http://twitter.github.com/bootstrap/javascript.html#popovers
1241
+ * ===========================================================
1242
+ * Copyright 2012 Twitter, Inc.
1243
+ *
1244
+ * Licensed under the Apache License, Version 2.0 (the "License");
1245
+ * you may not use this file except in compliance with the License.
1246
+ * You may obtain a copy of the License at
1247
+ *
1248
+ * http://www.apache.org/licenses/LICENSE-2.0
1249
+ *
1250
+ * Unless required by applicable law or agreed to in writing, software
1251
+ * distributed under the License is distributed on an "AS IS" BASIS,
1252
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1253
+ * See the License for the specific language governing permissions and
1254
+ * limitations under the License.
1255
+ * =========================================================== */
1256
+
1257
+
1258
+ !function ($) {
1259
+
1260
+ "use strict"; // jshint ;_;
1261
+
1262
+
1263
+ /* POPOVER PUBLIC CLASS DEFINITION
1264
+ * =============================== */
1265
+
1266
+ var Popover = function (element, options) {
1267
+ this.init('popover', element, options)
1268
+ }
1269
+
1270
+
1271
+ /* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js
1272
+ ========================================== */
1273
+
1274
+ Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, {
1275
+
1276
+ constructor: Popover
1277
+
1278
+ , setContent: function () {
1279
+ var $tip = this.tip()
1280
+ , title = this.getTitle()
1281
+ , content = this.getContent()
1282
+
1283
+ $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
1284
+ $tip.find('.popover-content > *')[this.options.html ? 'html' : 'text'](content)
1285
+
1286
+ $tip.removeClass('fade top bottom left right in')
1287
+ }
1288
+
1289
+ , hasContent: function () {
1290
+ return this.getTitle() || this.getContent()
1291
+ }
1292
+
1293
+ , getContent: function () {
1294
+ var content
1295
+ , $e = this.$element
1296
+ , o = this.options
1297
+
1298
+ content = $e.attr('data-content')
1299
+ || (typeof o.content == 'function' ? o.content.call($e[0]) : o.content)
1300
+
1301
+ return content
1302
+ }
1303
+
1304
+ , tip: function () {
1305
+ if (!this.$tip) {
1306
+ this.$tip = $(this.options.template)
1307
+ }
1308
+ return this.$tip
1309
+ }
1310
+
1311
+ , destroy: function () {
1312
+ this.hide().$element.off('.' + this.type).removeData(this.type)
1313
+ }
1314
+
1315
+ })
1316
+
1317
+
1318
+ /* POPOVER PLUGIN DEFINITION
1319
+ * ======================= */
1320
+
1321
+ $.fn.popover = function (option) {
1322
+ return this.each(function () {
1323
+ var $this = $(this)
1324
+ , data = $this.data('popover')
1325
+ , options = typeof option == 'object' && option
1326
+ if (!data) $this.data('popover', (data = new Popover(this, options)))
1327
+ if (typeof option == 'string') data[option]()
1328
+ })
1329
+ }
1330
+
1331
+ $.fn.popover.Constructor = Popover
1332
+
1333
+ $.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, {
1334
+ placement: 'right'
1335
+ , trigger: 'click'
1336
+ , content: ''
1337
+ , template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'
1338
+ })
1339
+
1340
+ }(window.jQuery);/* =============================================================
1341
+ * bootstrap-scrollspy.js v2.1.1
1342
+ * http://twitter.github.com/bootstrap/javascript.html#scrollspy
1343
+ * =============================================================
1344
+ * Copyright 2012 Twitter, Inc.
1345
+ *
1346
+ * Licensed under the Apache License, Version 2.0 (the "License");
1347
+ * you may not use this file except in compliance with the License.
1348
+ * You may obtain a copy of the License at
1349
+ *
1350
+ * http://www.apache.org/licenses/LICENSE-2.0
1351
+ *
1352
+ * Unless required by applicable law or agreed to in writing, software
1353
+ * distributed under the License is distributed on an "AS IS" BASIS,
1354
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1355
+ * See the License for the specific language governing permissions and
1356
+ * limitations under the License.
1357
+ * ============================================================== */
1358
+
1359
+
1360
+ !function ($) {
1361
+
1362
+ "use strict"; // jshint ;_;
1363
+
1364
+
1365
+ /* SCROLLSPY CLASS DEFINITION
1366
+ * ========================== */
1367
+
1368
+ function ScrollSpy(element, options) {
1369
+ var process = $.proxy(this.process, this)
1370
+ , $element = $(element).is('body') ? $(window) : $(element)
1371
+ , href
1372
+ this.options = $.extend({}, $.fn.scrollspy.defaults, options)
1373
+ this.$scrollElement = $element.on('scroll.scroll-spy.data-api', process)
1374
+ this.selector = (this.options.target
1375
+ || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
1376
+ || '') + ' .nav li > a'
1377
+ this.$body = $('body')
1378
+ this.refresh()
1379
+ this.process()
1380
+ }
1381
+
1382
+ ScrollSpy.prototype = {
1383
+
1384
+ constructor: ScrollSpy
1385
+
1386
+ , refresh: function () {
1387
+ var self = this
1388
+ , $targets
1389
+
1390
+ this.offsets = $([])
1391
+ this.targets = $([])
1392
+
1393
+ $targets = this.$body
1394
+ .find(this.selector)
1395
+ .map(function () {
1396
+ var $el = $(this)
1397
+ , href = $el.data('target') || $el.attr('href')
1398
+ , $href = /^#\w/.test(href) && $(href)
1399
+ return ( $href
1400
+ && $href.length
1401
+ && [[ $href.position().top, href ]] ) || null
1402
+ })
1403
+ .sort(function (a, b) { return a[0] - b[0] })
1404
+ .each(function () {
1405
+ self.offsets.push(this[0])
1406
+ self.targets.push(this[1])
1407
+ })
1408
+ }
1409
+
1410
+ , process: function () {
1411
+ var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
1412
+ , scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight
1413
+ , maxScroll = scrollHeight - this.$scrollElement.height()
1414
+ , offsets = this.offsets
1415
+ , targets = this.targets
1416
+ , activeTarget = this.activeTarget
1417
+ , i
1418
+
1419
+ if (scrollTop >= maxScroll) {
1420
+ return activeTarget != (i = targets.last()[0])
1421
+ && this.activate ( i )
1422
+ }
1423
+
1424
+ for (i = offsets.length; i--;) {
1425
+ activeTarget != targets[i]
1426
+ && scrollTop >= offsets[i]
1427
+ && (!offsets[i + 1] || scrollTop <= offsets[i + 1])
1428
+ && this.activate( targets[i] )
1429
+ }
1430
+ }
1431
+
1432
+ , activate: function (target) {
1433
+ var active
1434
+ , selector
1435
+
1436
+ this.activeTarget = target
1437
+
1438
+ $(this.selector)
1439
+ .parent('.active')
1440
+ .removeClass('active')
1441
+
1442
+ selector = this.selector
1443
+ + '[data-target="' + target + '"],'
1444
+ + this.selector + '[href="' + target + '"]'
1445
+
1446
+ active = $(selector)
1447
+ .parent('li')
1448
+ .addClass('active')
1449
+
1450
+ if (active.parent('.dropdown-menu').length) {
1451
+ active = active.closest('li.dropdown').addClass('active')
1452
+ }
1453
+
1454
+ active.trigger('activate')
1455
+ }
1456
+
1457
+ }
1458
+
1459
+
1460
+ /* SCROLLSPY PLUGIN DEFINITION
1461
+ * =========================== */
1462
+
1463
+ $.fn.scrollspy = function (option) {
1464
+ return this.each(function () {
1465
+ var $this = $(this)
1466
+ , data = $this.data('scrollspy')
1467
+ , options = typeof option == 'object' && option
1468
+ if (!data) $this.data('scrollspy', (data = new ScrollSpy(this, options)))
1469
+ if (typeof option == 'string') data[option]()
1470
+ })
1471
+ }
1472
+
1473
+ $.fn.scrollspy.Constructor = ScrollSpy
1474
+
1475
+ $.fn.scrollspy.defaults = {
1476
+ offset: 10
1477
+ }
1478
+
1479
+
1480
+ /* SCROLLSPY DATA-API
1481
+ * ================== */
1482
+
1483
+ $(window).on('load', function () {
1484
+ $('[data-spy="scroll"]').each(function () {
1485
+ var $spy = $(this)
1486
+ $spy.scrollspy($spy.data())
1487
+ })
1488
+ })
1489
+
1490
+ }(window.jQuery);/* ========================================================
1491
+ * bootstrap-tab.js v2.1.1
1492
+ * http://twitter.github.com/bootstrap/javascript.html#tabs
1493
+ * ========================================================
1494
+ * Copyright 2012 Twitter, Inc.
1495
+ *
1496
+ * Licensed under the Apache License, Version 2.0 (the "License");
1497
+ * you may not use this file except in compliance with the License.
1498
+ * You may obtain a copy of the License at
1499
+ *
1500
+ * http://www.apache.org/licenses/LICENSE-2.0
1501
+ *
1502
+ * Unless required by applicable law or agreed to in writing, software
1503
+ * distributed under the License is distributed on an "AS IS" BASIS,
1504
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1505
+ * See the License for the specific language governing permissions and
1506
+ * limitations under the License.
1507
+ * ======================================================== */
1508
+
1509
+
1510
+ !function ($) {
1511
+
1512
+ "use strict"; // jshint ;_;
1513
+
1514
+
1515
+ /* TAB CLASS DEFINITION
1516
+ * ==================== */
1517
+
1518
+ var Tab = function (element) {
1519
+ this.element = $(element)
1520
+ }
1521
+
1522
+ Tab.prototype = {
1523
+
1524
+ constructor: Tab
1525
+
1526
+ , show: function () {
1527
+ var $this = this.element
1528
+ , $ul = $this.closest('ul:not(.dropdown-menu)')
1529
+ , selector = $this.attr('data-target')
1530
+ , previous
1531
+ , $target
1532
+ , e
1533
+
1534
+ if (!selector) {
1535
+ selector = $this.attr('href')
1536
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
1537
+ }
1538
+
1539
+ if ( $this.parent('li').hasClass('active') ) return
1540
+
1541
+ previous = $ul.find('.active a').last()[0]
1542
+
1543
+ e = $.Event('show', {
1544
+ relatedTarget: previous
1545
+ })
1546
+
1547
+ $this.trigger(e)
1548
+
1549
+ if (e.isDefaultPrevented()) return
1550
+
1551
+ $target = $(selector)
1552
+
1553
+ this.activate($this.parent('li'), $ul)
1554
+ this.activate($target, $target.parent(), function () {
1555
+ $this.trigger({
1556
+ type: 'shown'
1557
+ , relatedTarget: previous
1558
+ })
1559
+ })
1560
+ }
1561
+
1562
+ , activate: function ( element, container, callback) {
1563
+ var $active = container.find('> .active')
1564
+ , transition = callback
1565
+ && $.support.transition
1566
+ && $active.hasClass('fade')
1567
+
1568
+ function next() {
1569
+ $active
1570
+ .removeClass('active')
1571
+ .find('> .dropdown-menu > .active')
1572
+ .removeClass('active')
1573
+
1574
+ element.addClass('active')
1575
+
1576
+ if (transition) {
1577
+ element[0].offsetWidth // reflow for transition
1578
+ element.addClass('in')
1579
+ } else {
1580
+ element.removeClass('fade')
1581
+ }
1582
+
1583
+ if ( element.parent('.dropdown-menu') ) {
1584
+ element.closest('li.dropdown').addClass('active')
1585
+ }
1586
+
1587
+ callback && callback()
1588
+ }
1589
+
1590
+ transition ?
1591
+ $active.one($.support.transition.end, next) :
1592
+ next()
1593
+
1594
+ $active.removeClass('in')
1595
+ }
1596
+ }
1597
+
1598
+
1599
+ /* TAB PLUGIN DEFINITION
1600
+ * ===================== */
1601
+
1602
+ $.fn.tab = function ( option ) {
1603
+ return this.each(function () {
1604
+ var $this = $(this)
1605
+ , data = $this.data('tab')
1606
+ if (!data) $this.data('tab', (data = new Tab(this)))
1607
+ if (typeof option == 'string') data[option]()
1608
+ })
1609
+ }
1610
+
1611
+ $.fn.tab.Constructor = Tab
1612
+
1613
+
1614
+ /* TAB DATA-API
1615
+ * ============ */
1616
+
1617
+ $(function () {
1618
+ $('body').on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
1619
+ e.preventDefault()
1620
+ $(this).tab('show')
1621
+ })
1622
+ })
1623
+
1624
+ }(window.jQuery);/* =============================================================
1625
+ * bootstrap-typeahead.js v2.1.1
1626
+ * http://twitter.github.com/bootstrap/javascript.html#typeahead
1627
+ * =============================================================
1628
+ * Copyright 2012 Twitter, Inc.
1629
+ *
1630
+ * Licensed under the Apache License, Version 2.0 (the "License");
1631
+ * you may not use this file except in compliance with the License.
1632
+ * You may obtain a copy of the License at
1633
+ *
1634
+ * http://www.apache.org/licenses/LICENSE-2.0
1635
+ *
1636
+ * Unless required by applicable law or agreed to in writing, software
1637
+ * distributed under the License is distributed on an "AS IS" BASIS,
1638
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1639
+ * See the License for the specific language governing permissions and
1640
+ * limitations under the License.
1641
+ * ============================================================ */
1642
+
1643
+
1644
+ !function($){
1645
+
1646
+ "use strict"; // jshint ;_;
1647
+
1648
+
1649
+ /* TYPEAHEAD PUBLIC CLASS DEFINITION
1650
+ * ================================= */
1651
+
1652
+ var Typeahead = function (element, options) {
1653
+ this.$element = $(element)
1654
+ this.options = $.extend({}, $.fn.typeahead.defaults, options)
1655
+ this.matcher = this.options.matcher || this.matcher
1656
+ this.sorter = this.options.sorter || this.sorter
1657
+ this.highlighter = this.options.highlighter || this.highlighter
1658
+ this.updater = this.options.updater || this.updater
1659
+ this.$menu = $(this.options.menu).appendTo('body')
1660
+ this.source = this.options.source
1661
+ this.shown = false
1662
+ this.listen()
1663
+ }
1664
+
1665
+ Typeahead.prototype = {
1666
+
1667
+ constructor: Typeahead
1668
+
1669
+ , select: function () {
1670
+ var val = this.$menu.find('.active').attr('data-value')
1671
+ this.$element
1672
+ .val(this.updater(val))
1673
+ .change()
1674
+ return this.hide()
1675
+ }
1676
+
1677
+ , updater: function (item) {
1678
+ return item
1679
+ }
1680
+
1681
+ , show: function () {
1682
+ var pos = $.extend({}, this.$element.offset(), {
1683
+ height: this.$element[0].offsetHeight
1684
+ })
1685
+
1686
+ this.$menu.css({
1687
+ top: pos.top + pos.height
1688
+ , left: pos.left
1689
+ })
1690
+
1691
+ this.$menu.show()
1692
+ this.shown = true
1693
+ return this
1694
+ }
1695
+
1696
+ , hide: function () {
1697
+ this.$menu.hide()
1698
+ this.shown = false
1699
+ return this
1700
+ }
1701
+
1702
+ , lookup: function (event) {
1703
+ var items
1704
+
1705
+ this.query = this.$element.val()
1706
+
1707
+ if (!this.query || this.query.length < this.options.minLength) {
1708
+ return this.shown ? this.hide() : this
1709
+ }
1710
+
1711
+ items = $.isFunction(this.source) ? this.source(this.query, $.proxy(this.process, this)) : this.source
1712
+
1713
+ return items ? this.process(items) : this
1714
+ }
1715
+
1716
+ , process: function (items) {
1717
+ var that = this
1718
+
1719
+ items = $.grep(items, function (item) {
1720
+ return that.matcher(item)
1721
+ })
1722
+
1723
+ items = this.sorter(items)
1724
+
1725
+ if (!items.length) {
1726
+ return this.shown ? this.hide() : this
1727
+ }
1728
+
1729
+ return this.render(items.slice(0, this.options.items)).show()
1730
+ }
1731
+
1732
+ , matcher: function (item) {
1733
+ return ~item.toLowerCase().indexOf(this.query.toLowerCase())
1734
+ }
1735
+
1736
+ , sorter: function (items) {
1737
+ var beginswith = []
1738
+ , caseSensitive = []
1739
+ , caseInsensitive = []
1740
+ , item
1741
+
1742
+ while (item = items.shift()) {
1743
+ if (!item.toLowerCase().indexOf(this.query.toLowerCase())) beginswith.push(item)
1744
+ else if (~item.indexOf(this.query)) caseSensitive.push(item)
1745
+ else caseInsensitive.push(item)
1746
+ }
1747
+
1748
+ return beginswith.concat(caseSensitive, caseInsensitive)
1749
+ }
1750
+
1751
+ , highlighter: function (item) {
1752
+ var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&')
1753
+ return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
1754
+ return '<strong>' + match + '</strong>'
1755
+ })
1756
+ }
1757
+
1758
+ , render: function (items) {
1759
+ var that = this
1760
+
1761
+ items = $(items).map(function (i, item) {
1762
+ i = $(that.options.item).attr('data-value', item)
1763
+ i.find('a').html(that.highlighter(item))
1764
+ return i[0]
1765
+ })
1766
+
1767
+ items.first().addClass('active')
1768
+ this.$menu.html(items)
1769
+ return this
1770
+ }
1771
+
1772
+ , next: function (event) {
1773
+ var active = this.$menu.find('.active').removeClass('active')
1774
+ , next = active.next()
1775
+
1776
+ if (!next.length) {
1777
+ next = $(this.$menu.find('li')[0])
1778
+ }
1779
+
1780
+ next.addClass('active')
1781
+ }
1782
+
1783
+ , prev: function (event) {
1784
+ var active = this.$menu.find('.active').removeClass('active')
1785
+ , prev = active.prev()
1786
+
1787
+ if (!prev.length) {
1788
+ prev = this.$menu.find('li').last()
1789
+ }
1790
+
1791
+ prev.addClass('active')
1792
+ }
1793
+
1794
+ , listen: function () {
1795
+ this.$element
1796
+ .on('blur', $.proxy(this.blur, this))
1797
+ .on('keypress', $.proxy(this.keypress, this))
1798
+ .on('keyup', $.proxy(this.keyup, this))
1799
+
1800
+ if ($.browser.chrome || $.browser.webkit || $.browser.msie) {
1801
+ this.$element.on('keydown', $.proxy(this.keydown, this))
1802
+ }
1803
+
1804
+ this.$menu
1805
+ .on('click', $.proxy(this.click, this))
1806
+ .on('mouseenter', 'li', $.proxy(this.mouseenter, this))
1807
+ }
1808
+
1809
+ , move: function (e) {
1810
+ if (!this.shown) return
1811
+
1812
+ switch(e.keyCode) {
1813
+ case 9: // tab
1814
+ case 13: // enter
1815
+ case 27: // escape
1816
+ e.preventDefault()
1817
+ break
1818
+
1819
+ case 38: // up arrow
1820
+ e.preventDefault()
1821
+ this.prev()
1822
+ break
1823
+
1824
+ case 40: // down arrow
1825
+ e.preventDefault()
1826
+ this.next()
1827
+ break
1828
+ }
1829
+
1830
+ e.stopPropagation()
1831
+ }
1832
+
1833
+ , keydown: function (e) {
1834
+ this.suppressKeyPressRepeat = !~$.inArray(e.keyCode, [40,38,9,13,27])
1835
+ this.move(e)
1836
+ }
1837
+
1838
+ , keypress: function (e) {
1839
+ if (this.suppressKeyPressRepeat) return
1840
+ this.move(e)
1841
+ }
1842
+
1843
+ , keyup: function (e) {
1844
+ switch(e.keyCode) {
1845
+ case 40: // down arrow
1846
+ case 38: // up arrow
1847
+ break
1848
+
1849
+ case 9: // tab
1850
+ case 13: // enter
1851
+ if (!this.shown) return
1852
+ this.select()
1853
+ break
1854
+
1855
+ case 27: // escape
1856
+ if (!this.shown) return
1857
+ this.hide()
1858
+ break
1859
+
1860
+ default:
1861
+ this.lookup()
1862
+ }
1863
+
1864
+ e.stopPropagation()
1865
+ e.preventDefault()
1866
+ }
1867
+
1868
+ , blur: function (e) {
1869
+ var that = this
1870
+ setTimeout(function () { that.hide() }, 150)
1871
+ }
1872
+
1873
+ , click: function (e) {
1874
+ e.stopPropagation()
1875
+ e.preventDefault()
1876
+ this.select()
1877
+ }
1878
+
1879
+ , mouseenter: function (e) {
1880
+ this.$menu.find('.active').removeClass('active')
1881
+ $(e.currentTarget).addClass('active')
1882
+ }
1883
+
1884
+ }
1885
+
1886
+
1887
+ /* TYPEAHEAD PLUGIN DEFINITION
1888
+ * =========================== */
1889
+
1890
+ $.fn.typeahead = function (option) {
1891
+ return this.each(function () {
1892
+ var $this = $(this)
1893
+ , data = $this.data('typeahead')
1894
+ , options = typeof option == 'object' && option
1895
+ if (!data) $this.data('typeahead', (data = new Typeahead(this, options)))
1896
+ if (typeof option == 'string') data[option]()
1897
+ })
1898
+ }
1899
+
1900
+ $.fn.typeahead.defaults = {
1901
+ source: []
1902
+ , items: 8
1903
+ , menu: '<ul class="typeahead dropdown-menu"></ul>'
1904
+ , item: '<li><a href="#"></a></li>'
1905
+ , minLength: 1
1906
+ }
1907
+
1908
+ $.fn.typeahead.Constructor = Typeahead
1909
+
1910
+
1911
+ /* TYPEAHEAD DATA-API
1912
+ * ================== */
1913
+
1914
+ $(function () {
1915
+ $('body').on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
1916
+ var $this = $(this)
1917
+ if ($this.data('typeahead')) return
1918
+ e.preventDefault()
1919
+ $this.typeahead($this.data())
1920
+ })
1921
+ })
1922
+
1923
+ }(window.jQuery);
1924
+ /* ==========================================================
1925
+ * bootstrap-affix.js v2.1.1
1926
+ * http://twitter.github.com/bootstrap/javascript.html#affix
1927
+ * ==========================================================
1928
+ * Copyright 2012 Twitter, Inc.
1929
+ *
1930
+ * Licensed under the Apache License, Version 2.0 (the "License");
1931
+ * you may not use this file except in compliance with the License.
1932
+ * You may obtain a copy of the License at
1933
+ *
1934
+ * http://www.apache.org/licenses/LICENSE-2.0
1935
+ *
1936
+ * Unless required by applicable law or agreed to in writing, software
1937
+ * distributed under the License is distributed on an "AS IS" BASIS,
1938
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1939
+ * See the License for the specific language governing permissions and
1940
+ * limitations under the License.
1941
+ * ========================================================== */
1942
+
1943
+
1944
+ !function ($) {
1945
+
1946
+ "use strict"; // jshint ;_;
1947
+
1948
+
1949
+ /* AFFIX CLASS DEFINITION
1950
+ * ====================== */
1951
+
1952
+ var Affix = function (element, options) {
1953
+ this.options = $.extend({}, $.fn.affix.defaults, options)
1954
+ this.$window = $(window).on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
1955
+ this.$element = $(element)
1956
+ this.checkPosition()
1957
+ }
1958
+
1959
+ Affix.prototype.checkPosition = function () {
1960
+ if (!this.$element.is(':visible')) return
1961
+
1962
+ var scrollHeight = $(document).height()
1963
+ , scrollTop = this.$window.scrollTop()
1964
+ , position = this.$element.offset()
1965
+ , offset = this.options.offset
1966
+ , offsetBottom = offset.bottom
1967
+ , offsetTop = offset.top
1968
+ , reset = 'affix affix-top affix-bottom'
1969
+ , affix
1970
+
1971
+ if (typeof offset != 'object') offsetBottom = offsetTop = offset
1972
+ if (typeof offsetTop == 'function') offsetTop = offset.top()
1973
+ if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()
1974
+
1975
+ affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ?
1976
+ false : offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ?
1977
+ 'bottom' : offsetTop != null && scrollTop <= offsetTop ?
1978
+ 'top' : false
1979
+
1980
+ if (this.affixed === affix) return
1981
+
1982
+ this.affixed = affix
1983
+ this.unpin = affix == 'bottom' ? position.top - scrollTop : null
1984
+
1985
+ this.$element.removeClass(reset).addClass('affix' + (affix ? '-' + affix : ''))
1986
+ }
1987
+
1988
+
1989
+ /* AFFIX PLUGIN DEFINITION
1990
+ * ======================= */
1991
+
1992
+ $.fn.affix = function (option) {
1993
+ return this.each(function () {
1994
+ var $this = $(this)
1995
+ , data = $this.data('affix')
1996
+ , options = typeof option == 'object' && option
1997
+ if (!data) $this.data('affix', (data = new Affix(this, options)))
1998
+ if (typeof option == 'string') data[option]()
1999
+ })
2000
+ }
2001
+
2002
+ $.fn.affix.Constructor = Affix
2003
+
2004
+ $.fn.affix.defaults = {
2005
+ offset: 0
2006
+ }
2007
+
2008
+
2009
+ /* AFFIX DATA-API
2010
+ * ============== */
2011
+
2012
+ $(window).on('load', function () {
2013
+ $('[data-spy="affix"]').each(function () {
2014
+ var $spy = $(this)
2015
+ , data = $spy.data()
2016
+
2017
+ data.offset = data.offset || {}
2018
+
2019
+ data.offsetBottom && (data.offset.bottom = data.offsetBottom)
2020
+ data.offsetTop && (data.offset.top = data.offsetTop)
2021
+
2022
+ $spy.affix(data)
2023
+ })
2024
+ })
2025
+
2026
+
2027
+ }(window.jQuery);
js/bootstrap/bootstrap.min.js ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ /**
2
+ * Bootstrap.js v2.1.1 by @fat & @mdo
3
+ * Copyright 2012 Twitter, Inc.
4
+ * http://www.apache.org/licenses/LICENSE-2.0.txt
5
+ */
6
+ !function(e){e(function(){"use strict";e.support.transition=function(){var e=function(){var e=document.createElement("bootstrap"),t={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},n;for(n in t)if(e.style[n]!==undefined)return t[n]}();return e&&{end:e}}()})}(window.jQuery),!function(e){"use strict";var t='[data-dismiss="alert"]',n=function(n){e(n).on("click",t,this.close)};n.prototype.close=function(t){function s(){i.trigger("closed").remove()}var n=e(this),r=n.attr("data-target"),i;r||(r=n.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,"")),i=e(r),t&&t.preventDefault(),i.length||(i=n.hasClass("alert")?n:n.parent()),i.trigger(t=e.Event("close"));if(t.isDefaultPrevented())return;i.removeClass("in"),e.support.transition&&i.hasClass("fade")?i.on(e.support.transition.end,s):s()},e.fn.alert=function(t){return this.each(function(){var r=e(this),i=r.data("alert");i||r.data("alert",i=new n(this)),typeof t=="string"&&i[t].call(r)})},e.fn.alert.Constructor=n,e(function(){e("body").on("click.alert.data-api",t,n.prototype.close)})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.button.defaults,n)};t.prototype.setState=function(e){var t="disabled",n=this.$element,r=n.data(),i=n.is("input")?"val":"html";e+="Text",r.resetText||n.data("resetText",n[i]()),n[i](r[e]||this.options[e]),setTimeout(function(){e=="loadingText"?n.addClass(t).attr(t,t):n.removeClass(t).removeAttr(t)},0)},t.prototype.toggle=function(){var e=this.$element.closest('[data-toggle="buttons-radio"]');e&&e.find(".active").removeClass("active"),this.$element.toggleClass("active")},e.fn.button=function(n){return this.each(function(){var r=e(this),i=r.data("button"),s=typeof n=="object"&&n;i||r.data("button",i=new t(this,s)),n=="toggle"?i.toggle():n&&i.setState(n)})},e.fn.button.defaults={loadingText:"loading..."},e.fn.button.Constructor=t,e(function(){e("body").on("click.button.data-api","[data-toggle^=button]",function(t){var n=e(t.target);n.hasClass("btn")||(n=n.closest(".btn")),n.button("toggle")})})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=n,this.options.slide&&this.slide(this.options.slide),this.options.pause=="hover"&&this.$element.on("mouseenter",e.proxy(this.pause,this)).on("mouseleave",e.proxy(this.cycle,this))};t.prototype={cycle:function(t){return t||(this.paused=!1),this.options.interval&&!this.paused&&(this.interval=setInterval(e.proxy(this.next,this),this.options.interval)),this},to:function(t){var n=this.$element.find(".item.active"),r=n.parent().children(),i=r.index(n),s=this;if(t>r.length-1||t<0)return;return this.sliding?this.$element.one("slid",function(){s.to(t)}):i==t?this.pause().cycle():this.slide(t>i?"next":"prev",e(r[t]))},pause:function(t){return t||(this.paused=!0),this.$element.find(".next, .prev").length&&e.support.transition.end&&(this.$element.trigger(e.support.transition.end),this.cycle()),clearInterval(this.interval),this.interval=null,this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(t,n){var r=this.$element.find(".item.active"),i=n||r[t](),s=this.interval,o=t=="next"?"left":"right",u=t=="next"?"first":"last",a=this,f=e.Event("slide",{relatedTarget:i[0]});this.sliding=!0,s&&this.pause(),i=i.length?i:this.$element.find(".item")[u]();if(i.hasClass("active"))return;if(e.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(f);if(f.isDefaultPrevented())return;i.addClass(t),i[0].offsetWidth,r.addClass(o),i.addClass(o),this.$element.one(e.support.transition.end,function(){i.removeClass([t,o].join(" ")).addClass("active"),r.removeClass(["active",o].join(" ")),a.sliding=!1,setTimeout(function(){a.$element.trigger("slid")},0)})}else{this.$element.trigger(f);if(f.isDefaultPrevented())return;r.removeClass("active"),i.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return s&&this.cycle(),this}},e.fn.carousel=function(n){return this.each(function(){var r=e(this),i=r.data("carousel"),s=e.extend({},e.fn.carousel.defaults,typeof n=="object"&&n),o=typeof n=="string"?n:s.slide;i||r.data("carousel",i=new t(this,s)),typeof n=="number"?i.to(n):o?i[o]():s.interval&&i.cycle()})},e.fn.carousel.defaults={interval:5e3,pause:"hover"},e.fn.carousel.Constructor=t,e(function(){e("body").on("click.carousel.data-api","[data-slide]",function(t){var n=e(this),r,i=e(n.attr("data-target")||(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]+$)/,"")),s=!i.data("modal")&&e.extend({},i.data(),n.data());i.carousel(s),t.preventDefault()})})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.collapse.defaults,n),this.options.parent&&(this.$parent=e(this.options.parent)),this.options.toggle&&this.toggle()};t.prototype={constructor:t,dimension:function(){var e=this.$element.hasClass("width");return e?"width":"height"},show:function(){var t,n,r,i;if(this.transitioning)return;t=this.dimension(),n=e.camelCase(["scroll",t].join("-")),r=this.$parent&&this.$parent.find("> .accordion-group > .in");if(r&&r.length){i=r.data("collapse");if(i&&i.transitioning)return;r.collapse("hide"),i||r.data("collapse",null)}this.$element[t](0),this.transition("addClass",e.Event("show"),"shown"),e.support.transition&&this.$element[t](this.$element[0][n])},hide:function(){var t;if(this.transitioning)return;t=this.dimension(),this.reset(this.$element[t]()),this.transition("removeClass",e.Event("hide"),"hidden"),this.$element[t](0)},reset:function(e){var t=this.dimension();return this.$element.removeClass("collapse")[t](e||"auto")[0].offsetWidth,this.$element[e!==null?"addClass":"removeClass"]("collapse"),this},transition:function(t,n,r){var i=this,s=function(){n.type=="show"&&i.reset(),i.transitioning=0,i.$element.trigger(r)};this.$element.trigger(n);if(n.isDefaultPrevented())return;this.transitioning=1,this.$element[t]("in"),e.support.transition&&this.$element.hasClass("collapse")?this.$element.one(e.support.transition.end,s):s()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},e.fn.collapse=function(n){return this.each(function(){var r=e(this),i=r.data("collapse"),s=typeof n=="object"&&n;i||r.data("collapse",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.collapse.defaults={toggle:!0},e.fn.collapse.Constructor=t,e(function(){e("body").on("click.collapse.data-api","[data-toggle=collapse]",function(t){var n=e(this),r,i=n.attr("data-target")||t.preventDefault()||(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]+$)/,""),s=e(i).data("collapse")?"toggle":n.data();n[e(i).hasClass("in")?"addClass":"removeClass"]("collapsed"),e(i).collapse(s)})})}(window.jQuery),!function(e){"use strict";function r(){i(e(t)).removeClass("open")}function i(t){var n=t.attr("data-target"),r;return n||(n=t.attr("href"),n=n&&/#/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,"")),r=e(n),r.length||(r=t.parent()),r}var t="[data-toggle=dropdown]",n=function(t){var n=e(t).on("click.dropdown.data-api",this.toggle);e("html").on("click.dropdown.data-api",function(){n.parent().removeClass("open")})};n.prototype={constructor:n,toggle:function(t){var n=e(this),s,o;if(n.is(".disabled, :disabled"))return;return s=i(n),o=s.hasClass("open"),r(),o||(s.toggleClass("open"),n.focus()),!1},keydown:function(t){var n,r,s,o,u,a;if(!/(38|40|27)/.test(t.keyCode))return;n=e(this),t.preventDefault(),t.stopPropagation();if(n.is(".disabled, :disabled"))return;o=i(n),u=o.hasClass("open");if(!u||u&&t.keyCode==27)return n.click();r=e("[role=menu] li:not(.divider) a",o);if(!r.length)return;a=r.index(r.filter(":focus")),t.keyCode==38&&a>0&&a--,t.keyCode==40&&a<r.length-1&&a++,~a||(a=0),r.eq(a).focus()}},e.fn.dropdown=function(t){return this.each(function(){var r=e(this),i=r.data("dropdown");i||r.data("dropdown",i=new n(this)),typeof t=="string"&&i[t].call(r)})},e.fn.dropdown.Constructor=n,e(function(){e("html").on("click.dropdown.data-api touchstart.dropdown.data-api",r),e("body").on("click.dropdown touchstart.dropdown.data-api",".dropdown form",function(e){e.stopPropagation()}).on("click.dropdown.data-api touchstart.dropdown.data-api",t,n.prototype.toggle).on("keydown.dropdown.data-api touchstart.dropdown.data-api",t+", [role=menu]",n.prototype.keydown)})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.options=n,this.$element=e(t).delegate('[data-dismiss="modal"]',"click.dismiss.modal",e.proxy(this.hide,this)),this.options.remote&&this.$element.find(".modal-body").load(this.options.remote)};t.prototype={constructor:t,toggle:function(){return this[this.isShown?"hide":"show"]()},show:function(){var t=this,n=e.Event("show");this.$element.trigger(n);if(this.isShown||n.isDefaultPrevented())return;e("body").addClass("modal-open"),this.isShown=!0,this.escape(),this.backdrop(function(){var n=e.support.transition&&t.$element.hasClass("fade");t.$element.parent().length||t.$element.appendTo(document.body),t.$element.show(),n&&t.$element[0].offsetWidth,t.$element.addClass("in").attr("aria-hidden",!1).focus(),t.enforceFocus(),n?t.$element.one(e.support.transition.end,function(){t.$element.trigger("shown")}):t.$element.trigger("shown")})},hide:function(t){t&&t.preventDefault();var n=this;t=e.Event("hide"),this.$element.trigger(t);if(!this.isShown||t.isDefaultPrevented())return;this.isShown=!1,e("body").removeClass("modal-open"),this.escape(),e(document).off("focusin.modal"),this.$element.removeClass("in").attr("aria-hidden",!0),e.support.transition&&this.$element.hasClass("fade")?this.hideWithTransition():this.hideModal()},enforceFocus:function(){var t=this;e(document).on("focusin.modal",function(e){t.$element[0]!==e.target&&!t.$element.has(e.target).length&&t.$element.focus()})},escape:function(){var e=this;this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.modal",function(t){t.which==27&&e.hide()}):this.isShown||this.$element.off("keyup.dismiss.modal")},hideWithTransition:function(){var t=this,n=setTimeout(function(){t.$element.off(e.support.transition.end),t.hideModal()},500);this.$element.one(e.support.transition.end,function(){clearTimeout(n),t.hideModal()})},hideModal:function(e){this.$element.hide().trigger("hidden"),this.backdrop()},removeBackdrop:function(){this.$backdrop.remove(),this.$backdrop=null},backdrop:function(t){var n=this,r=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var i=e.support.transition&&r;this.$backdrop=e('<div class="modal-backdrop '+r+'" />').appendTo(document.body),this.options.backdrop!="static"&&this.$backdrop.click(e.proxy(this.hide,this)),i&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),i?this.$backdrop.one(e.support.transition.end,t):t()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),e.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(e.support.transition.end,e.proxy(this.removeBackdrop,this)):this.removeBackdrop()):t&&t()}},e.fn.modal=function(n){return this.each(function(){var r=e(this),i=r.data("modal"),s=e.extend({},e.fn.modal.defaults,r.data(),typeof n=="object"&&n);i||r.data("modal",i=new t(this,s)),typeof n=="string"?i[n]():s.show&&i.show()})},e.fn.modal.defaults={backdrop:!0,keyboard:!0,show:!0},e.fn.modal.Constructor=t,e(function(){e("body").on("click.modal.data-api",'[data-toggle="modal"]',function(t){var n=e(this),r=n.attr("href"),i=e(n.attr("data-target")||r&&r.replace(/.*(?=#[^\s]+$)/,"")),s=i.data("modal")?"toggle":e.extend({remote:!/#/.test(r)&&r},i.data(),n.data());t.preventDefault(),i.modal(s).one("hide",function(){n.focus()})})})}(window.jQuery),!function(e){"use strict";var t=function(e,t){this.init("tooltip",e,t)};t.prototype={constructor:t,init:function(t,n,r){var i,s;this.type=t,this.$element=e(n),this.options=this.getOptions(r),this.enabled=!0,this.options.trigger=="click"?this.$element.on("click."+this.type,this.options.selector,e.proxy(this.toggle,this)):this.options.trigger!="manual"&&(i=this.options.trigger=="hover"?"mouseenter":"focus",s=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(i+"."+this.type,this.options.selector,e.proxy(this.enter,this)),this.$element.on(s+"."+this.type,this.options.selector,e.proxy(this.leave,this))),this.options.selector?this._options=e.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(t){return t=e.extend({},e.fn[this.type].defaults,t,this.$element.data()),t.delay&&typeof t.delay=="number"&&(t.delay={show:t.delay,hide:t.delay}),t},enter:function(t){var n=e(t.currentTarget)[this.type](this._options).data(this.type);if(!n.options.delay||!n.options.delay.show)return n.show();clearTimeout(this.timeout),n.hoverState="in",this.timeout=setTimeout(function(){n.hoverState=="in"&&n.show()},n.options.delay.show)},leave:function(t){var n=e(t.currentTarget)[this.type](this._options).data(this.type);this.timeout&&clearTimeout(this.timeout);if(!n.options.delay||!n.options.delay.hide)return n.hide();n.hoverState="out",this.timeout=setTimeout(function(){n.hoverState=="out"&&n.hide()},n.options.delay.hide)},show:function(){var e,t,n,r,i,s,o;if(this.hasContent()&&this.enabled){e=this.tip(),this.setContent(),this.options.animation&&e.addClass("fade"),s=typeof this.options.placement=="function"?this.options.placement.call(this,e[0],this.$element[0]):this.options.placement,t=/in/.test(s),e.remove().css({top:0,left:0,display:"block"}).appendTo(t?this.$element:document.body),n=this.getPosition(t),r=e[0].offsetWidth,i=e[0].offsetHeight;switch(t?s.split(" ")[1]:s){case"bottom":o={top:n.top+n.height,left:n.left+n.width/2-r/2};break;case"top":o={top:n.top-i,left:n.left+n.width/2-r/2};break;case"left":o={top:n.top+n.height/2-i/2,left:n.left-r};break;case"right":o={top:n.top+n.height/2-i/2,left:n.left+n.width}}e.css(o).addClass(s).addClass("in")}},setContent:function(){var e=this.tip(),t=this.getTitle();e.find(".tooltip-inner")[this.options.html?"html":"text"](t),e.removeClass("fade in top bottom left right")},hide:function(){function r(){var t=setTimeout(function(){n.off(e.support.transition.end).remove()},500);n.one(e.support.transition.end,function(){clearTimeout(t),n.remove()})}var t=this,n=this.tip();return n.removeClass("in"),e.support.transition&&this.$tip.hasClass("fade")?r():n.remove(),this},fixTitle:function(){var e=this.$element;(e.attr("title")||typeof e.attr("data-original-title")!="string")&&e.attr("data-original-title",e.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(t){return e.extend({},t?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var e,t=this.$element,n=this.options;return e=t.attr("data-original-title")||(typeof n.title=="function"?n.title.call(t[0]):n.title),e},tip:function(){return this.$tip=this.$tip||e(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}},e.fn.tooltip=function(n){return this.each(function(){var r=e(this),i=r.data("tooltip"),s=typeof n=="object"&&n;i||r.data("tooltip",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.tooltip.Constructor=t,e.fn.tooltip.defaults={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover",title:"",delay:0,html:!0}}(window.jQuery),!function(e){"use strict";var t=function(e,t){this.init("popover",e,t)};t.prototype=e.extend({},e.fn.tooltip.Constructor.prototype,{constructor:t,setContent:function(){var e=this.tip(),t=this.getTitle(),n=this.getContent();e.find(".popover-title")[this.options.html?"html":"text"](t),e.find(".popover-content > *")[this.options.html?"html":"text"](n),e.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var e,t=this.$element,n=this.options;return e=t.attr("data-content")||(typeof n.content=="function"?n.content.call(t[0]):n.content),e},tip:function(){return this.$tip||(this.$tip=e(this.options.template)),this.$tip},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}}),e.fn.popover=function(n){return this.each(function(){var r=e(this),i=r.data("popover"),s=typeof n=="object"&&n;i||r.data("popover",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.popover.Constructor=t,e.fn.popover.defaults=e.extend({},e.fn.tooltip.defaults,{placement:"right",trigger:"click",content:"",template:'<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'})}(window.jQuery),!function(e){"use strict";function t(t,n){var r=e.proxy(this.process,this),i=e(t).is("body")?e(window):e(t),s;this.options=e.extend({},e.fn.scrollspy.defaults,n),this.$scrollElement=i.on("scroll.scroll-spy.data-api",r),this.selector=(this.options.target||(s=e(t).attr("href"))&&s.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.$body=e("body"),this.refresh(),this.process()}t.prototype={constructor:t,refresh:function(){var t=this,n;this.offsets=e([]),this.targets=e([]),n=this.$body.find(this.selector).map(function(){var t=e(this),n=t.data("target")||t.attr("href"),r=/^#\w/.test(n)&&e(n);return r&&r.length&&[[r.position().top,n]]||null}).sort(function(e,t){return e[0]-t[0]}).each(function(){t.offsets.push(this[0]),t.targets.push(this[1])})},process:function(){var e=this.$scrollElement.scrollTop()+this.options.offset,t=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,n=t-this.$scrollElement.height(),r=this.offsets,i=this.targets,s=this.activeTarget,o;if(e>=n)return s!=(o=i.last()[0])&&this.activate(o);for(o=r.length;o--;)s!=i[o]&&e>=r[o]&&(!r[o+1]||e<=r[o+1])&&this.activate(i[o])},activate:function(t){var n,r;this.activeTarget=t,e(this.selector).parent(".active").removeClass("active"),r=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',n=e(r).parent("li").addClass("active"),n.parent(".dropdown-menu").length&&(n=n.closest("li.dropdown").addClass("active")),n.trigger("activate")}},e.fn.scrollspy=function(n){return this.each(function(){var r=e(this),i=r.data("scrollspy"),s=typeof n=="object"&&n;i||r.data("scrollspy",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.scrollspy.Constructor=t,e.fn.scrollspy.defaults={offset:10},e(window).on("load",function(){e('[data-spy="scroll"]').each(function(){var t=e(this);t.scrollspy(t.data())})})}(window.jQuery),!function(e){"use strict";var t=function(t){this.element=e(t)};t.prototype={constructor:t,show:function(){var t=this.element,n=t.closest("ul:not(.dropdown-menu)"),r=t.attr("data-target"),i,s,o;r||(r=t.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,""));if(t.parent("li").hasClass("active"))return;i=n.find(".active a").last()[0],o=e.Event("show",{relatedTarget:i}),t.trigger(o);if(o.isDefaultPrevented())return;s=e(r),this.activate(t.parent("li"),n),this.activate(s,s.parent(),function(){t.trigger({type:"shown",relatedTarget:i})})},activate:function(t,n,r){function o(){i.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),t.addClass("active"),s?(t[0].offsetWidth,t.addClass("in")):t.removeClass("fade"),t.parent(".dropdown-menu")&&t.closest("li.dropdown").addClass("active"),r&&r()}var i=n.find("> .active"),s=r&&e.support.transition&&i.hasClass("fade");s?i.one(e.support.transition.end,o):o(),i.removeClass("in")}},e.fn.tab=function(n){return this.each(function(){var r=e(this),i=r.data("tab");i||r.data("tab",i=new t(this)),typeof n=="string"&&i[n]()})},e.fn.tab.Constructor=t,e(function(){e("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(t){t.preventDefault(),e(this).tab("show")})})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.typeahead.defaults,n),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.updater=this.options.updater||this.updater,this.$menu=e(this.options.menu).appendTo("body"),this.source=this.options.source,this.shown=!1,this.listen()};t.prototype={constructor:t,select:function(){var e=this.$menu.find(".active").attr("data-value");return this.$element.val(this.updater(e)).change(),this.hide()},updater:function(e){return e},show:function(){var t=e.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});return this.$menu.css({top:t.top+t.height,left:t.left}),this.$menu.show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(t){var n;return this.query=this.$element.val(),!this.query||this.query.length<this.options.minLength?this.shown?this.hide():this:(n=e.isFunction(this.source)?this.source(this.query,e.proxy(this.process,this)):this.source,n?this.process(n):this)},process:function(t){var n=this;return t=e.grep(t,function(e){return n.matcher(e)}),t=this.sorter(t),t.length?this.render(t.slice(0,this.options.items)).show():this.shown?this.hide():this},matcher:function(e){return~e.toLowerCase().indexOf(this.query.toLowerCase())},sorter:function(e){var t=[],n=[],r=[],i;while(i=e.shift())i.toLowerCase().indexOf(this.query.toLowerCase())?~i.indexOf(this.query)?n.push(i):r.push(i):t.push(i);return t.concat(n,r)},highlighter:function(e){var t=this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&");return e.replace(new RegExp("("+t+")","ig"),function(e,t){return"<strong>"+t+"</strong>"})},render:function(t){var n=this;return t=e(t).map(function(t,r){return t=e(n.options.item).attr("data-value",r),t.find("a").html(n.highlighter(r)),t[0]}),t.first().addClass("active"),this.$menu.html(t),this},next:function(t){var n=this.$menu.find(".active").removeClass("active"),r=n.next();r.length||(r=e(this.$menu.find("li")[0])),r.addClass("active")},prev:function(e){var t=this.$menu.find(".active").removeClass("active"),n=t.prev();n.length||(n=this.$menu.find("li").last()),n.addClass("active")},listen:function(){this.$element.on("blur",e.proxy(this.blur,this)).on("keypress",e.proxy(this.keypress,this)).on("keyup",e.proxy(this.keyup,this)),(e.browser.chrome||e.browser.webkit||e.browser.msie)&&this.$element.on("keydown",e.proxy(this.keydown,this)),this.$menu.on("click",e.proxy(this.click,this)).on("mouseenter","li",e.proxy(this.mouseenter,this))},move:function(e){if(!this.shown)return;switch(e.keyCode){case 9:case 13:case 27:e.preventDefault();break;case 38:e.preventDefault(),this.prev();break;case 40:e.preventDefault(),this.next()}e.stopPropagation()},keydown:function(t){this.suppressKeyPressRepeat=!~e.inArray(t.keyCode,[40,38,9,13,27]),this.move(t)},keypress:function(e){if(this.suppressKeyPressRepeat)return;this.move(e)},keyup:function(e){switch(e.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:if(!this.shown)return;this.hide();break;default:this.lookup()}e.stopPropagation(),e.preventDefault()},blur:function(e){var t=this;setTimeout(function(){t.hide()},150)},click:function(e){e.stopPropagation(),e.preventDefault(),this.select()},mouseenter:function(t){this.$menu.find(".active").removeClass("active"),e(t.currentTarget).addClass("active")}},e.fn.typeahead=function(n){return this.each(function(){var r=e(this),i=r.data("typeahead"),s=typeof n=="object"&&n;i||r.data("typeahead",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.typeahead.defaults={source:[],items:8,menu:'<ul class="typeahead dropdown-menu"></ul>',item:'<li><a href="#"></a></li>',minLength:1},e.fn.typeahead.Constructor=t,e(function(){e("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(t){var n=e(this);if(n.data("typeahead"))return;t.preventDefault(),n.typeahead(n.data())})})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.options=e.extend({},e.fn.affix.defaults,n),this.$window=e(window).on("scroll.affix.data-api",e.proxy(this.checkPosition,this)),this.$element=e(t),this.checkPosition()};t.prototype.checkPosition=function(){if(!this.$element.is(":visible"))return;var t=e(document).height(),n=this.$window.scrollTop(),r=this.$element.offset(),i=this.options.offset,s=i.bottom,o=i.top,u="affix affix-top affix-bottom",a;typeof i!="object"&&(s=o=i),typeof o=="function"&&(o=i.top()),typeof s=="function"&&(s=i.bottom()),a=this.unpin!=null&&n+this.unpin<=r.top?!1:s!=null&&r.top+this.$element.height()>=t-s?"bottom":o!=null&&n<=o?"top":!1;if(this.affixed===a)return;this.affixed=a,this.unpin=a=="bottom"?r.top-n:null,this.$element.removeClass(u).addClass("affix"+(a?"-"+a:""))},e.fn.affix=function(n){return this.each(function(){var r=e(this),i=r.data("affix"),s=typeof n=="object"&&n;i||r.data("affix",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.affix.Constructor=t,e.fn.affix.defaults={offset:0},e(window).on("load",function(){e('[data-spy="affix"]').each(function(){var t=e(this),n=t.data();n.offset=n.offset||{},n.offsetBottom&&(n.offset.bottom=n.offsetBottom),n.offsetTop&&(n.offset.top=n.offsetTop),t.affix(n)})})}(window.jQuery);
js/bootstrap/cloud-zoom.1.0.2.min.js ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ //////////////////////////////////////////////////////////////////////////////////
2
+
3
+ // Cloud Zoom V1.0.2
4
+
5
+ // (c) 2010 by R Cecco. <http://www.professorcloud.com>
6
+
7
+ // MIT License
8
+
9
+ //
10
+
11
+ // Please retain this copyright header in all versions of the software
12
+
13
+ //////////////////////////////////////////////////////////////////////////////////
14
+
15
+ jQuery.noConflict();
16
+
17
+ (function($){jQuery(function() {jQuery('.cloud-zoom, .cloud-zoom-gallery').CloudZoom();});function format(str){for(var i=1;i<arguments.length;i++){str=str.replace('%'+(i-1),arguments[i])}return str}function CloudZoom(jWin,opts){var sImg=$('img',jWin);var img1;var img2;var zoomDiv=null;var $mouseTrap=null;var lens=null;var $tint=null;var softFocus=null;var $ie6Fix=null;var zoomImage;var controlTimer=0;var cw,ch;var destU=0;var destV=0;var currV=0;var currU=0;var filesLoaded=0;var mx,my;var ctx=this,zw;setTimeout(function(){if($mouseTrap===null){var w=jWin.width();jWin.parent().append(format('<div style="width:%0px;position:absolute;top:75%;left:%1px;text-align:center" class="cloud-zoom-loading" >Loading...</div>',w/3,(w/2)-(w/6))).find(':last').css('opacity',0.5)}},200);var ie6FixRemove=function(){if($ie6Fix!==null){$ie6Fix.remove();$ie6Fix=null}};this.removeBits=function(){if(lens){lens.remove();lens=null}if($tint){$tint.remove();$tint=null}if(softFocus){softFocus.remove();softFocus=null}ie6FixRemove();$('.cloud-zoom-loading',jWin.parent()).remove()};this.destroy=function(){jWin.data('zoom',null);if($mouseTrap){$mouseTrap.unbind();$mouseTrap.remove();$mouseTrap=null}if(zoomDiv){zoomDiv.remove();zoomDiv=null}this.removeBits()};this.fadedOut=function(){if(zoomDiv){zoomDiv.remove();zoomDiv=null}this.removeBits()};this.controlLoop=function(){if(lens){var x=(mx-sImg.offset().left-(cw*0.5))>>0;var y=(my-sImg.offset().top-(ch*0.5))>>0;if(x<0){x=0}else if(x>(sImg.outerWidth()-cw)){x=(sImg.outerWidth()-cw)}if(y<0){y=0}else if(y>(sImg.outerHeight()-ch)){y=(sImg.outerHeight()-ch)}lens.css({left:x,top:y});lens.css('background-position',(-x)+'px '+(-y)+'px');destU=(((x)/sImg.outerWidth())*zoomImage.width)>>0;destV=(((y)/sImg.outerHeight())*zoomImage.height)>>0;currU+=(destU-currU)/opts.smoothMove;currV+=(destV-currV)/opts.smoothMove;zoomDiv.css('background-position',(-(currU>>0)+'px ')+(-(currV>>0)+'px'))}controlTimer=setTimeout(function(){ctx.controlLoop()},30)};this.init2=function(img,id){filesLoaded++;if(id===1){zoomImage=img}if(filesLoaded===2){this.init()}};this.init=function(){$('.cloud-zoom-loading',jWin.parent()).remove();$mouseTrap=jWin.parent().append(format("<div class='mousetrap' style='background-image:url(\".\");z-index:999;position:absolute;width:%0px;height:%1px;left:%2px;top:%3px;\'></div>",sImg.outerWidth(),sImg.outerHeight(),0,0)).find(':last');$mouseTrap.bind('mousemove',this,function(event){mx=event.pageX;my=event.pageY});$mouseTrap.bind('mouseleave',this,function(event){clearTimeout(controlTimer);if(lens){lens.fadeOut(299)}if($tint){$tint.fadeOut(299)}if(softFocus){softFocus.fadeOut(299)}zoomDiv.fadeOut(300,function(){ctx.fadedOut()});return false});$mouseTrap.bind('mouseenter',this,function(event){mx=event.pageX;my=event.pageY;zw=event.data;if(zoomDiv){zoomDiv.stop(true,false);zoomDiv.remove()}var xPos=opts.adjustX,yPos=opts.adjustY;var siw=sImg.outerWidth();var sih=sImg.outerHeight();var w=opts.zoomWidth;var h=opts.zoomHeight;if(opts.zoomWidth=='auto'){w=siw}if(opts.zoomHeight=='auto'){h=sih}var appendTo=jWin.parent();switch(opts.position){case'top':yPos-=h;break;case'right':xPos+=siw;break;case'bottom':yPos+=sih;break;case'left':xPos-=w;break;case'inside':w=siw;h=sih;break;default:appendTo=$('#'+opts.position);if(!appendTo.length){appendTo=jWin;xPos+=siw;yPos+=sih}else{w=appendTo.innerWidth();h=appendTo.innerHeight()}}zoomDiv=appendTo.append(format('<div id="cloud-zoom-big" class="cloud-zoom-big" style="display:none;position:absolute;left:%0px;top:%1px;width:%2px;height:%3px;background-image:url(\'%4\');z-index:99;"></div>',xPos,yPos,w,h,zoomImage.src)).find(':last');if(sImg.attr('title')&&opts.showTitle){zoomDiv.append(format('<div class="cloud-zoom-title">%0</div>',sImg.attr('title'))).find(':last').css('opacity',opts.titleOpacity)}if($.browser.msie&&$.browser.version<7){$ie6Fix=$('<iframe frameborder="0" src="#"></iframe>').css({position:"absolute",left:xPos,top:yPos,zIndex:99,width:w,height:h}).insertBefore(zoomDiv)}zoomDiv.fadeIn(500);if(lens){lens.remove();lens=null}cw=(sImg.outerWidth()/zoomImage.width)*parseInt(zoomDiv.css('width'));ch=(sImg.outerHeight()/zoomImage.height)*zoomDiv.height();lens=jWin.append(format("<div class = 'cloud-zoom-lens' style='display:none;z-index:98;position:absolute;width:%0px;height:%1px;'></div>",cw,ch)).find(':last');$mouseTrap.css('cursor',lens.css('cursor'));$mouseTrap.unbind('click').bind('click',function(){var t=$(this).prev('a').attr('gallery');if(t==''){return;}(t,'gallery','width=300,height=300,left=50,top=50,location=no,status=yes,scrollbars=yes,resizable=yes');});var noTrans=false;if(opts.tint){lens.css('background','url("'+sImg.attr('src')+'")');$tint=jWin.append(format('<div style="display:none;position:absolute; left:0px; top:0px; width:%0px; height:%1px; background-color:%2;" />',sImg.outerWidth(),sImg.outerHeight(),opts.tint)).find(':last');$tint.css('opacity',opts.tintOpacity);noTrans=true;$tint.fadeIn(500)}if(opts.softFocus){lens.css('background','url("'+sImg.attr('src')+'")');softFocus=jWin.append(format('<div style="position:absolute;display:none;top:2px; left:2px; width:%0px; height:%1px;" />',sImg.outerWidth()-2,sImg.outerHeight()-2,opts.tint)).find(':last');softFocus.css('background','url("'+sImg.attr('src')+'")');softFocus.css('opacity',0.5);noTrans=true;softFocus.fadeIn(500)}if(!noTrans){lens.css('opacity',opts.lensOpacity)}if(opts.position!=='inside'){lens.fadeIn(500)}zw.controlLoop();return})};img1=new Image();$(img1).load(function(){ctx.init2(this,0)});img1.src=sImg.attr('src');img2=new Image();$(img2).load(function(){ctx.init2(this,1)});img2.src=jWin.attr('href')}$.fn.CloudZoom=function(options){try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}this.each(function(){var relOpts,opts;eval('var a = {'+$(this).attr('rel')+'}');relOpts=a;if($(this).is('.cloud-zoom')){$(this).css({'position':'relative','display':'block'});$('img',$(this)).css({'display':'block'});if($(this).parent().attr('id')!='wrap'){$(this).wrap('<div id="wrap" style="top:0px;z-index:9999;position:relative;"></div>')}opts=$.extend({},$.fn.CloudZoom.defaults,options);opts=$.extend({},opts,relOpts);$(this).data('zoom',new CloudZoom($(this),opts))}else if($(this).is('.cloud-zoom-gallery')){opts=$.extend({},relOpts,options);$(this).data('relOpts',opts);$(this).bind('click',$(this),function(event){var data=event.data.data('relOpts');$('#'+data.useZoom).data('zoom').destroy();$('#'+data.useZoom).attr('href',event.data.attr('href'));var t = event.data.attr('title');var bimg = $('#'+data.useZoom+' img').attr('src',event.data.data('relOpts').smallImage);if(t!=''){bimg.attr('title', t);}bimg.parent().attr('gallery',event.data.data('relOpts').popupWin);$('#'+event.data.data('relOpts').useZoom).CloudZoom();return false})}});return this};$.fn.CloudZoom.defaults={zoomWidth:'auto',zoomHeight:'auto',position:'right',tint:false,tintOpacity:0.5,lensOpacity:0.5,softFocus:false,smoothMove:3,showTitle:true,titleOpacity:0.5,adjustX:0,adjustY:0}})(jQuery);
js/bootstrap/easyTooltip.js ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ * Easy Tooltip 1.0 - jQuery plugin
3
+ * written by Alen Grakalic
4
+ * http://cssglobe.com/post/4380/easy-tooltip--jquery-plugin
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
+ (function($) {
16
+
17
+ $.fn.easyTooltip = function(options){
18
+
19
+ // default configuration properties
20
+ var defaults = {
21
+ xOffset: 10,
22
+ yOffset: 25,
23
+ tooltipId: "easyTooltip",
24
+ clickRemove: false,
25
+ content: "",
26
+ useElement: ""
27
+ };
28
+
29
+ var options = $.extend(defaults, options);
30
+ var content;
31
+
32
+ this.each(function() {
33
+ var title = $(this).attr("title");
34
+ $(this).hover(function(e){
35
+ content = (options.content != "") ? options.content : title;
36
+ content = (options.useElement != "") ? $("#" + options.useElement).html() : content;
37
+ $(this).attr("title","");
38
+ if (content != "" && content != undefined){
39
+ $("body").append("<div id='"+ options.tooltipId +"'>"+ content +"</div>");
40
+ $("#" + options.tooltipId)
41
+ .css("position","absolute")
42
+ .css("top",(e.pageY - options.yOffset) + "px")
43
+ .css("left",(e.pageX + options.xOffset) + "px")
44
+ .css("display","none")
45
+ .fadeIn("fast")
46
+ }
47
+ },
48
+ function(){
49
+ $("#" + options.tooltipId).remove();
50
+ $(this).attr("title",title);
51
+ });
52
+ $(this).mousemove(function(e){
53
+ $("#" + options.tooltipId)
54
+ .css("top",(e.pageY - options.yOffset) + "px")
55
+ .css("left",(e.pageX + options.xOffset) + "px")
56
+ });
57
+ if(options.clickRemove){
58
+ $(this).mousedown(function(e){
59
+ $("#" + options.tooltipId).remove();
60
+ $(this).attr("title",title);
61
+ });
62
+ }
63
+ });
64
+
65
+ };
66
+
67
+ })(jQuery);
js/bootstrap/jquery-1.7.2.min.js ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ /*! jQuery v1.7.2 jquery.com | jquery.org/license */
2
+ (function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cu(a){if(!cj[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ck||(ck=c.createElement("iframe"),ck.frameBorder=ck.width=ck.height=0),b.appendChild(ck);if(!cl||!ck.createElement)cl=(ck.contentWindow||ck.contentDocument).document,cl.write((f.support.boxModel?"<!doctype html>":"")+"<html><body>"),cl.close();d=cl.createElement(a),cl.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ck)}cj[a]=e}return cj[a]}function ct(a,b){var c={};f.each(cp.concat.apply([],cp.slice(0,b)),function(){c[this]=a});return c}function cs(){cq=b}function cr(){setTimeout(cs,0);return cq=f.now()}function ci(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ch(){try{return new a.XMLHttpRequest}catch(b){}}function cb(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function ca(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function b_(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bD.test(a)?d(a,e):b_(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&f.type(b)==="object")for(var e in b)b_(a+"["+e+"]",b[e],c,d);else d(a,b)}function b$(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function bZ(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bS,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bZ(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bZ(a,c,d,e,"*",g));return l}function bY(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bO),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bB(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?1:0,g=4;if(d>0){if(c!=="border")for(;e<g;e+=2)c||(d-=parseFloat(f.css(a,"padding"+bx[e]))||0),c==="margin"?d+=parseFloat(f.css(a,c+bx[e]))||0:d-=parseFloat(f.css(a,"border"+bx[e]+"Width"))||0;return d+"px"}d=by(a,b);if(d<0||d==null)d=a.style[b];if(bt.test(d))return d;d=parseFloat(d)||0;if(c)for(;e<g;e+=2)d+=parseFloat(f.css(a,"padding"+bx[e]))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+bx[e]+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+bx[e]))||0);return d+"px"}function bo(a){var b=c.createElement("div");bh.appendChild(b),b.innerHTML=a.outerHTML;return b.firstChild}function bn(a){var b=(a.nodeName||"").toLowerCase();b==="input"?bm(a):b!=="script"&&typeof a.getElementsByTagName!="undefined"&&f.grep(a.getElementsByTagName("input"),bm)}function bm(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bl(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bk(a,b){var c;b.nodeType===1&&(b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),c==="object"?b.outerHTML=a.outerHTML:c!=="input"||a.type!=="checkbox"&&a.type!=="radio"?c==="option"?b.selected=a.defaultSelected:c==="input"||c==="textarea"?b.defaultValue=a.defaultValue:c==="script"&&b.text!==a.text&&(b.text=a.text):(a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value)),b.removeAttribute(f.expando),b.removeAttribute("_submit_attached"),b.removeAttribute("_change_attached"))}function bj(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c,d,e,g=f._data(a),h=f._data(b,g),i=g.events;if(i){delete h.handle,h.events={};for(c in i)for(d=0,e=i[c].length;d<e;d++)f.event.add(b,c,i[c][d])}h.data&&(h.data=f.extend({},h.data))}}function bi(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function U(a){var b=V.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function T(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(O.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?+d:j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c<d;c++)b[a[c]]=!0;return b}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){if(typeof c!="string"||!c)return null;var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b,c){var d;if(b){if(H)return H.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h,i){var j,k=d==null,l=0,m=a.length;if(d&&typeof d=="object"){for(l in d)e.access(a,c,l,d[l],1,h,f);g=1}else if(f!==b){j=i===b&&e.isFunction(f),k&&(j?(j=c,c=function(a,b,c){return j.call(e(a),c)}):(c.call(a,f),c=null));if(c)for(;l<m;l++)c(a[l],d,j?f.call(a[l],l,c(a[l],d)):f,i);g=1}return g?a:k?c.call(a):m?c(a[0],d):h},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=r.exec(a)||s.exec(a)||t.exec(a)||a.indexOf("compatible")<0&&u.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g={};f.Callbacks=function(a){a=a?g[a]||h(a):{};var c=[],d=[],e,i,j,k,l,m,n=function(b){var d,e,g,h,i;for(d=0,e=b.length;d<e;d++)g=b[d],h=f.type(g),h==="array"?n(g):h==="function"&&(!a.unique||!p.has(g))&&c.push(g)},o=function(b,f){f=f||[],e=!a.memory||[b,f],i=!0,j=!0,m=k||0,k=0,l=c.length;for(;c&&m<l;m++)if(c[m].apply(b,f)===!1&&a.stopOnFalse){e=!0;break}j=!1,c&&(a.once?e===!0?p.disable():c=[]:d&&d.length&&(e=d.shift(),p.fireWith(e[0],e[1])))},p={add:function(){if(c){var a=c.length;n(arguments),j?l=c.length:e&&e!==!0&&(k=a,o(e[0],e[1]))}return this},remove:function(){if(c){var b=arguments,d=0,e=b.length;for(;d<e;d++)for(var f=0;f<c.length;f++)if(b[d]===c[f]){j&&f<=l&&(l--,f<=m&&m--),c.splice(f--,1);if(a.unique)break}}return this},has:function(a){if(c){var b=0,d=c.length;for(;b<d;b++)if(a===c[b])return!0}return!1},empty:function(){c=[];return this},disable:function(){c=d=e=b;return this},disabled:function(){return!c},lock:function(){d=b,(!e||e===!0)&&p.disable();return this},locked:function(){return!d},fireWith:function(b,c){d&&(j?a.once||d.push([b,c]):(!a.once||!e)&&o(b,c));return this},fire:function(){p.fireWith(this,arguments);return this},fired:function(){return!!i}};return p};var i=[].slice;f.extend({Deferred:function(a){var b=f.Callbacks("once memory"),c=f.Callbacks("once memory"),d=f.Callbacks("memory"),e="pending",g={resolve:b,reject:c,notify:d},h={done:b.add,fail:c.add,progress:d.add,state:function(){return e},isResolved:b.fired,isRejected:c.fired,then:function(a,b,c){i.done(a).fail(b).progress(c);return this},always:function(){i.done.apply(i,arguments).fail.apply(i,arguments);return this},pipe:function(a,b,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[b,"reject"],progress:[c,"notify"]},function(a,b){var c=b[0],e=b[1],g;f.isFunction(c)?i[a](function(){g=c.apply(this,arguments),g&&f.isFunction(g.promise)?g.promise().then(d.resolve,d.reject,d.notify):d[e+"With"](this===i?d:this,[g])}):i[a](d[e])})}).promise()},promise:function(a){if(a==null)a=h;else for(var b in h)a[b]=h[b];return a}},i=h.promise({}),j;for(j in g)i[j]=g[j].fire,i[j+"With"]=g[j].fireWith;i.done(function(){e="resolved"},c.disable,d.lock).fail(function(){e="rejected"},b.disable,d.lock),a&&a.call(i,i);return i},when:function(a){function m(a){return function(b){e[a]=arguments.length>1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c<d;c++)b[c]&&b[c].promise&&f.isFunction(b[c].promise)?b[c].promise().then(l(c),j.reject,m(c)):--g;g||j.resolveWith(j,b)}else j!==a&&j.resolveWith(j,d?[a]:[]);return k}}),f.support=function(){var b,d,e,g,h,i,j,k,l,m,n,o,p=c.createElement("div"),q=c.documentElement;p.setAttribute("className","t"),p.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=p.getElementsByTagName("*"),e=p.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=p.getElementsByTagName("input")[0],b={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:p.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,pixelMargin:!0},f.boxModel=b.boxModel=c.compatMode==="CSS1Compat",i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete p.test}catch(r){b.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",function(){b.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),i.setAttribute("name","t"),p.appendChild(i),j=c.createDocumentFragment(),j.appendChild(p.lastChild),b.checkClone=j.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,j.removeChild(i),j.appendChild(p);if(p.attachEvent)for(n in{submit:1,change:1,focusin:1})m="on"+n,o=m in p,o||(p.setAttribute(m,"return;"),o=typeof p[m]=="function"),b[n+"Bubbles"]=o;j.removeChild(p),j=g=h=p=i=null,f(function(){var d,e,g,h,i,j,l,m,n,q,r,s,t,u=c.getElementsByTagName("body")[0];!u||(m=1,t="padding:0;margin:0;border:",r="position:absolute;top:0;left:0;width:1px;height:1px;",s=t+"0;visibility:hidden;",n="style='"+r+t+"5px solid #000;",q="<div "+n+"display:block;'><div style='"+t+"0;display:block;overflow:hidden;'></div></div>"+"<table "+n+"' cellpadding='0' cellspacing='0'>"+"<tr><td></td></tr></table>",d=c.createElement("div"),d.style.cssText=s+"width:0;height:0;position:static;top:0;margin-top:"+m+"px",u.insertBefore(d,u.firstChild),p=c.createElement("div"),d.appendChild(p),p.innerHTML="<table><tr><td style='"+t+"0;display:none'></td><td>t</td></tr></table>",k=p.getElementsByTagName("td"),o=k[0].offsetHeight===0,k[0].style.display="",k[1].style.display="none",b.reliableHiddenOffsets=o&&k[0].offsetHeight===0,a.getComputedStyle&&(p.innerHTML="",l=c.createElement("div"),l.style.width="0",l.style.marginRight="0",p.style.width="2px",p.appendChild(l),b.reliableMarginRight=(parseInt((a.getComputedStyle(l,null)||{marginRight:0}).marginRight,10)||0)===0),typeof p.style.zoom!="undefined"&&(p.innerHTML="",p.style.width=p.style.padding="1px",p.style.border=0,p.style.overflow="hidden",p.style.display="inline",p.style.zoom=1,b.inlineBlockNeedsLayout=p.offsetWidth===3,p.style.display="block",p.style.overflow="visible",p.innerHTML="<div style='width:5px;'></div>",b.shrinkWrapBlocks=p.offsetWidth!==3),p.style.cssText=r+s,p.innerHTML=q,e=p.firstChild,g=e.firstChild,i=e.nextSibling.firstChild.firstChild,j={doesNotAddBorder:g.offsetTop!==5,doesAddBorderForTableAndCells:i.offsetTop===5},g.style.position="fixed",g.style.top="20px",j.fixedPosition=g.offsetTop===20||g.offsetTop===15,g.style.position=g.style.top="",e.style.overflow="hidden",e.style.position="relative",j.subtractsBorderForOverflowNotVisible=g.offsetTop===-5,j.doesNotIncludeMarginInBodyOffset=u.offsetTop!==m,a.getComputedStyle&&(p.style.marginTop="1%",b.pixelMargin=(a.getComputedStyle(p,null)||{marginTop:0}).marginTop!=="1%"),typeof d.style.zoom!="undefined"&&(d.style.zoom=1),u.removeChild(d),l=p=d=null,f.extend(b,j))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e<g;e++)delete d[b[e]];if(!(c?m:f.isEmptyObject)(d))return}}if(!c){delete j[k].data;if(!m(j[k]))return}f.support.deleteExpando||!j.setInterval?delete j[k]:j[k]=null,i&&(f.support.deleteExpando?delete a[h]:a.removeAttribute?a.removeAttribute(h):a[h]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d,e,g,h,i,j=this[0],k=0,m=null;if(a===b){if(this.length){m=f.data(j);if(j.nodeType===1&&!f._data(j,"parsedAttrs")){g=j.attributes;for(i=g.length;k<i;k++)h=g[k].name,h.indexOf("data-")===0&&(h=f.camelCase(h.substring(5)),l(j,h,m[h]));f._data(j,"parsedAttrs",!0)}}return m}if(typeof a=="object")return this.each(function(){f.data(this,a)});d=a.split(".",2),d[1]=d[1]?"."+d[1]:"",e=d[1]+"!";return f.access(this,function(c){if(c===b){m=this.triggerHandler("getData"+e,[d[0]]),m===b&&j&&(m=f.data(j,a),m=l(j,a,m));return m===b&&d[1]?this.data(d[0]):m}d[1]=c,this.each(function(){var b=f(this);b.triggerHandler("setData"+e,d),f.data(this,a,c),b.triggerHandler("changeData"+e,d)})},null,c,arguments.length>1,null,!1)},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",f._data(a,b,(f._data(a,b)||0)+1))},_unmark:function(a,b,c){a!==!0&&(c=b,b=a,a=!1);if(b){c=c||"fx";var d=c+"mark",e=a?0:(f._data(b,d)||1)-1;e?f._data(b,d,e):(f.removeData(b,d,!0),n(b,c,"mark"))}},queue:function(a,b,c){var d;if(a){b=(b||"fx")+"queue",d=f._data(a,b),c&&(!d||f.isArray(c)?d=f._data(a,b,f.makeArray(c)):d.push(c));return d||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e={};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),f._data(a,b+".run",e),d.call(a,function(){f.dequeue(a,b)},e)),c.length||(f.removeData(a,b+"queue "+b+".run",!0),n(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){var d=2;typeof a!="string"&&(c=a,a="fx",d--);if(arguments.length<d)return f.queue(this[0],a);return c===b?this:this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f.Callbacks("once memory"),!0))h++,l.add(m);m();return d.promise(c)}});var o=/[\n\t\r]/g,p=/\s+/,q=/\r/g,r=/^(?:button|input)$/i,s=/^(?:button|input|object|select|textarea)$/i,t=/^a(?:rea)?$/i,u=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,v=f.support.getSetAttribute,w,x,y;f.fn.extend({attr:function(a,b){return f.access(this,f.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,f.prop,a,b,arguments.length>1)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(p);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(p);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(o," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(p);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(o," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.type]||f.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.type]||f.valHooks[g.nodeName.toLowerCase()];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c<d;c++){e=i[c];if(e.selected&&(f.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!f.nodeName(e.parentNode,"optgroup"))){b=f(e).val();if(j)return b;h.push(b)}}if(j&&!h.length&&i.length)return f(i[g]).val();return h},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h,i=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;i<g;i++)e=d[i],e&&(c=f.propFix[e]||e,h=u.test(e),h||f.attr(a,e,""),a.removeAttribute(v?e:c),h&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(r.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(w&&f.nodeName(a,"button"))return w.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(w&&f.nodeName(a,"button"))return w.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,g,h,i=a.nodeType;if(!!a&&i!==3&&i!==8&&i!==2){h=i!==1||!f.isXMLDoc(a),h&&(c=f.propFix[c]||c,g=f.propHooks[c]);return d!==b?g&&"set"in g&&(e=g.set(a,d,c))!==b?e:a[c]=d:g&&"get"in g&&(e=g.get(a,c))!==null?e:a[c]}},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):s.test(a.nodeName)||t.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabindex=f.propHooks.tabIndex,x={get:function(a,c){var d,e=f.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},v||(y={name:!0,id:!0,coords:!0},w=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&(y[c]?d.nodeValue!=="":d.specified)?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.attrHooks.tabindex.set=w.set,f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})}),f.attrHooks.contenteditable={get:w.get,set:function(a,b,c){b===""&&(b="false"),w.set(a,b,c)}}),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.enctype||(f.propFix.enctype="encoding"),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/(?:^|\s)hover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(
3
+ a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")};f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler,g=p.selector),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k<c.length;k++){l=A.exec(c[k])||[],m=l[1],n=(l[2]||"").split(".").sort(),s=f.event.special[m]||{},m=(g?s.delegateType:s.bindType)||m,s=f.event.special[m]||{},o=f.extend({type:m,origType:l[1],data:e,handler:d,guid:d.guid,selector:g,quick:g&&G(g),namespace:n.join(".")},p),r=j[m];if(!r){r=j[m]=[],r.delegateCount=0;if(!s.setup||s.setup.call(a,e,n,i)===!1)a.addEventListener?a.addEventListener(m,i,!1):a.attachEvent&&a.attachEvent("on"+m,i)}s.add&&(s.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid)),g?r.splice(r.delegateCount++,0,o):r.push(o),f.event.global[m]=!0}a=null}},global:{},remove:function(a,b,c,d,e){var g=f.hasData(a)&&f._data(a),h,i,j,k,l,m,n,o,p,q,r,s;if(!!g&&!!(o=g.events)){b=f.trim(I(b||"")).split(" ");for(h=0;h<b.length;h++){i=A.exec(b[h])||[],j=k=i[1],l=i[2];if(!j){for(j in o)f.event.remove(a,j+b[h],c,d,!0);continue}p=f.event.special[j]||{},j=(d?p.delegateType:p.bindType)||j,r=o[j]||[],m=r.length,l=l?new RegExp("(^|\\.)"+l.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(n=0;n<r.length;n++)s=r[n],(e||k===s.origType)&&(!c||c.guid===s.guid)&&(!l||l.test(s.namespace))&&(!d||d===s.selector||d==="**"&&s.selector)&&(r.splice(n--,1),s.selector&&r.delegateCount--,p.remove&&p.remove.call(a,s));r.length===0&&m!==r.length&&((!p.teardown||p.teardown.call(a,l)===!1)&&f.removeEvent(a,j,g.handle),delete o[j])}f.isEmptyObject(o)&&(q=g.handle,q&&(q.elem=null),f.removeData(a,["events","handle"],!0))}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){if(!e||e.nodeType!==3&&e.nodeType!==8){var h=c.type||c,i=[],j,k,l,m,n,o,p,q,r,s;if(E.test(h+f.event.triggered))return;h.indexOf("!")>=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;l<r.length&&!c.isPropagationStopped();l++)m=r[l][0],c.type=r[l][1],q=(f._data(m,"events")||{})[c.type]&&f._data(m,"handle"),q&&q.apply(m,d),q=o&&m[o],q&&f.acceptData(m)&&q.apply(m,d)===!1&&c.preventDefault();c.type=h,!g&&!c.isDefaultPrevented()&&(!p._default||p._default.apply(e.ownerDocument,d)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)&&o&&e[h]&&(h!=="focus"&&h!=="blur"||c.target.offsetWidth!==0)&&!f.isWindow(e)&&(n=e[o],n&&(e[o]=null),f.event.triggered=h,e[h](),f.event.triggered=b,n&&(e[o]=n));return c.result}},dispatch:function(c){c=f.event.fix(c||a.event);var d=(f._data(this,"events")||{})[c.type]||[],e=d.delegateCount,g=[].slice.call(arguments,0),h=!c.exclusive&&!c.namespace,i=f.event.special[c.type]||{},j=[],k,l,m,n,o,p,q,r,s,t,u;g[0]=c,c.delegateTarget=this;if(!i.preDispatch||i.preDispatch.call(this,c)!==!1){if(e&&(!c.button||c.type!=="click")){n=f(this),n.context=this.ownerDocument||this;for(m=c.target;m!=this;m=m.parentNode||this)if(m.disabled!==!0){p={},r=[],n[0]=m;for(k=0;k<e;k++)s=d[k],t=s.selector,p[t]===b&&(p[t]=s.quick?H(m,s.quick):n.is(t)),p[t]&&r.push(s);r.length&&j.push({elem:m,matches:r})}}d.length>e&&j.push({elem:this,matches:d.slice(e)});for(k=0;k<j.length&&!c.isPropagationStopped();k++){q=j[k],c.currentTarget=q.elem;for(l=0;l<q.matches.length&&!c.isImmediatePropagationStopped();l++){s=q.matches[l];if(h||!c.namespace&&!s.namespace||c.namespace_re&&c.namespace_re.test(s.namespace))c.data=s.data,c.handleObj=s,o=((f.event.special[s.origType]||{}).handle||s.handler).apply(q.elem,g),o!==b&&(c.result=o,o===!1&&(c.preventDefault(),c.stopPropagation()))}}i.postDispatch&&i.postDispatch.call(this,c);return c.result}},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode);return a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,d){var e,f,g,h=d.button,i=d.fromElement;a.pageX==null&&d.clientX!=null&&(e=a.target.ownerDocument||c,f=e.documentElement,g=e.body,a.pageX=d.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=d.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?d.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0);return a}},fix:function(a){if(a[f.expando])return a;var d,e,g=a,h=f.event.fixHooks[a.type]||{},i=h.props?this.props.concat(h.props):this.props;a=f.Event(g);for(d=i.length;d;)e=i[--d],a[e]=g[e];a.target||(a.target=g.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey===b&&(a.metaKey=a.ctrlKey);return h.filter?h.filter(a,g):a},special:{ready:{setup:f.bindReady},load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=f.extend(new f.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?f.event.trigger(e,null,b):f.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},f.event.handle=f.event.dispatch,f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!(this instanceof f.Event))return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?K:J):this.type=a,b&&f.extend(this,b),this.timeStamp=a&&a.timeStamp||f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=K;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=K;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=K,this.stopPropagation()},isDefaultPrevented:J,isPropagationStopped:J,isImmediatePropagationStopped:J},f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c=this,d=a.relatedTarget,e=a.handleObj,g=e.selector,h;if(!d||d!==c&&!f.contains(c,d))a.type=e.origType,h=e.handler.apply(this,arguments),a.type=b;return h}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(){if(f.nodeName(this,"form"))return!1;f.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=f.nodeName(c,"input")||f.nodeName(c,"button")?c.form:b;d&&!d._submit_attached&&(f.event.add(d,"submit._submit",function(a){a._submit_bubble=!0}),d._submit_attached=!0)})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&f.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){if(f.nodeName(this,"form"))return!1;f.event.remove(this,"._submit")}}),f.support.changeBubbles||(f.event.special.change={setup:function(){if(z.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")f.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),f.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1,f.event.simulate("change",this,a,!0))});return!1}f.event.add(this,"beforeactivate._change",function(a){var b=a.target;z.test(b.nodeName)&&!b._change_attached&&(f.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&f.event.simulate("change",this.parentNode,a,!0)}),b._change_attached=!0)})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){f.event.remove(this,"._change");return z.test(this.nodeName)}}),f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){var d=0,e=function(a){f.event.simulate(b,a.target,f.event.fix(a),!0)};f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.fn.extend({on:function(a,c,d,e,g){var h,i;if(typeof a=="object"){typeof c!="string"&&(d=d||c,c=b);for(i in a)this.on(i,c,d,a[i],g);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=J;else if(!e)return this;g===1&&(h=e,e=function(a){f().off(a);return h.apply(this,arguments)},e.guid=h.guid||(h.guid=f.guid++));return this.each(function(){f.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,c,d){if(a&&a.preventDefault&&a.handleObj){var e=a.handleObj;f(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler);return this}if(typeof a=="object"){for(var g in a)this.off(g,c,a[g]);return this}if(c===!1||typeof c=="function")d=c,c=b;d===!1&&(d=J);return this.each(function(){f.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){f(this.context).on(a,this.selector,b,c);return this},die:function(a,b){f(this.context).off(a,this.selector||"**",b);return this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length==1?this.off(a,"**"):this.off(b,a,c)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f._data(this,"lastToggle"+a.guid)||0)%d;f._data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}if(j.nodeType===1){g||(j[d]=c,j.sizset=h);if(typeof b!="string"){if(j===b){k=!0;break}}else if(m.filter(b,[j]).length>0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}j.nodeType===1&&!g&&(j[d]=c,j.sizset=h);if(j.nodeName.toLowerCase()===b){k=j;break}j=j[a]}e[h]=k}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},m.matches=function(a,b){return m(a,null,null,b)},m.matchesSelector=function(a,b){return m(b,null,null,[a]).length>0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e<f;e++){h=o.order[e];if(g=o.leftMatch[h].exec(a)){i=g[1],g.splice(1,1);if(i.substr(i.length-1)!=="\\"){g[1]=(g[1]||"").replace(j,""),d=o.find[h](g,b,c);if(d!=null){a=a.replace(o.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},m.filter=function(a,c,d,e){var f,g,h,i,j,k,l,n,p,q=a,r=[],s=c,t=c&&c[0]&&m.isXML(c[0]);while(a&&c.length){for(h in o.filter)if((f=o.leftMatch[h].exec(a))!=null&&f[2]){k=o.filter[h],l=f[1],g=!1,f.splice(1,1);if(l.substr(l.length-1)==="\\")continue;s===r&&(r=[]);if(o.preFilter[h]){f=o.preFilter[h](f,s,d,r,e,t);if(!f)g=i=!0;else if(f===!0)continue}if(f)for(n=0;(j=s[n])!=null;n++)j&&(i=k(j,f,n,s),p=e^i,d&&i!=null?p?g=!0:s[n]=!1:p&&(r.push(j),g=!0));if(i!==b){d||(s=r),a=a.replace(o.match[h],"");if(!g)return[];break}}if(a===q)if(g==null)m.error(a);else break;q=a}return s},m.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)};var n=m.getText=function(a){var b,c,d=a.nodeType,e="";if(d){if(d===1||d===9||d===11){if(typeof a.textContent=="string")return a.textContent;if(typeof a.innerText=="string")return a.innerText.replace(k,"");for(a=a.firstChild;a;a=a.nextSibling)e+=n(a)}else if(d===3||d===4)return a.nodeValue}else for(b=0;c=a[b];b++)c.nodeType!==8&&(e+=n(c));return e},o=m.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|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!l.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&m.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&m.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("previousSibling",b,f,a,d,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(j,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}m.error(e)},CHILD:function(a,b){var c,e,f,g,h,i,j,k=b[1],l=a;switch(k){case"only":case"first":while(l=l.previousSibling)if(l.nodeType===1)return!1;if(k==="first")return!0;l=a;case"last":while(l=l.nextSibling)if(l.nodeType===1)return!1;return!0;case"nth":c=b[2],e=b[3];if(c===1&&e===0)return!0;f=b[0],g=a.parentNode;if(g&&(g[d]!==f||!a.nodeIndex)){i=0;for(l=g.firstChild;l;l=l.nextSibling)l.nodeType===1&&(l.nodeIndex=++i);g[d]=f}j=a.nodeIndex-e;return c===0?j===0:j%c===0&&j/c>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));o.match.globalPOS=p;var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var u,v;c.documentElement.compareDocumentPosition?u=function(a,b){if(a===b){h=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(u=function(a,b){if(a===b){h=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,i=b.parentNode,j=g;if(g===i)return v(a,b);if(!g)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return v(e[k],f[k]);return k===c?v(a,f[k],-1):v(e[k],b,1)},v=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h<i;h++)m(a,g[h],e,c);return m.filter(f,e)};m.attr=f.attr,m.selectors.attrMap={},f.find=m,f.expr=m.selectors,f.expr[":"]=f.expr.filters,f.unique=m.uniqueSort,f.text=m.getText,f.isXMLDoc=m.isXML,f.contains=m.contains}();var L=/Until$/,M=/^(?:parents|prevUntil|prevAll)/,N=/,/,O=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,Q=f.expr.match.globalPOS,R={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(T(this,a,!1),"not",a)},filter:function(a){return this.pushStack(T(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?Q.test(a)?f(a,this.context).index(this[0])>=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d<a.length;d++)f(g).is(a[d])&&c.push({selector:a[d],elem:g,level:h});g=g.parentNode,h++}return c}var i=Q.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(i?i.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|style)/i,bb=/<(?:script|object|embed|option|style)/i,bc=new RegExp("<(?:"+V+")[\\s/>]","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){return f.access(this,function(a){return a===b?f.text(this):this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f
4
+ .clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){return f.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(;d<e;d++)c=this[d]||{},c.nodeType===1&&(f.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(g){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bi(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,function(a,b){b.src?f.ajax({type:"GET",global:!1,url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i,j=a[0];b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof j=="string"&&j.length<512&&i===c&&j.charAt(0)==="<"&&!bb.test(j)&&(f.support.checkClone||!bd.test(j))&&(f.support.html5Clone||!bc.test(j))&&(g=!0,h=f.fragments[j],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[j]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||f.isXMLDoc(a)||!bc.test("<"+a.nodeName+">")?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g,h,i,j=[];b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);for(var k=0,l;(l=a[k])!=null;k++){typeof l=="number"&&(l+="");if(!l)continue;if(typeof l=="string")if(!_.test(l))l=b.createTextNode(l);else{l=l.replace(Y,"<$1></$2>");var m=(Z.exec(l)||["",""])[1].toLowerCase(),n=bg[m]||bg._default,o=n[0],p=b.createElement("div"),q=bh.childNodes,r;b===c?bh.appendChild(p):U(b).appendChild(p),p.innerHTML=n[1]+l+n[2];while(o--)p=p.lastChild;if(!f.support.tbody){var s=$.test(l),t=m==="table"&&!s?p.firstChild&&p.firstChild.childNodes:n[1]==="<table>"&&!s?p.childNodes:[];for(i=t.length-1;i>=0;--i)f.nodeName(t[i],"tbody")&&!t[i].childNodes.length&&t[i].parentNode.removeChild(t[i])}!f.support.leadingWhitespace&&X.test(l)&&p.insertBefore(b.createTextNode(X.exec(l)[0]),p.firstChild),l=p.childNodes,p&&(p.parentNode.removeChild(p),q.length>0&&(r=q[q.length-1],r&&r.parentNode&&r.parentNode.removeChild(r)))}var u;if(!f.support.appendChecked)if(l[0]&&typeof (u=l.length)=="number")for(i=0;i<u;i++)bn(l[i]);else bn(l);l.nodeType?j.push(l):j=f.merge(j,l)}if(d){g=function(a){return!a.type||be.test(a.type)};for(k=0;j[k];k++){h=j[k];if(e&&f.nodeName(h,"script")&&(!h.type||be.test(h.type)))e.push(h.parentNode?h.parentNode.removeChild(h):h);else{if(h.nodeType===1){var v=f.grep(h.getElementsByTagName("script"),g);j.splice.apply(j,[k+1,0].concat(v))}d.appendChild(h)}}}return j},cleanData:function(a){var b,c,d=f.cache,e=f.event.special,g=f.support.deleteExpando;for(var h=0,i;(i=a[h])!=null;h++){if(i.nodeName&&f.noData[i.nodeName.toLowerCase()])continue;c=i[f.expando];if(c){b=d[c];if(b&&b.events){for(var j in b.events)e[j]?f.event.remove(i,j):f.removeEvent(i,j,b.handle);b.handle&&(b.handle.elem=null)}g?delete i[f.expando]:i.removeAttribute&&i.removeAttribute(f.expando),delete d[c]}}}});var bp=/alpha\([^)]*\)/i,bq=/opacity=([^)]*)/,br=/([A-Z]|^ms)/g,bs=/^[\-+]?(?:\d*\.)?\d+$/i,bt=/^-?(?:\d*\.)?\d+(?!px)[^\d\s]+$/i,bu=/^([\-+])=([\-+.\de]+)/,bv=/^margin/,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Top","Right","Bottom","Left"],by,bz,bA;f.fn.css=function(a,c){return f.access(this,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)},a,c,arguments.length>1)},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=by(a,"opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=bu.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(by)return by(a,c)},swap:function(a,b,c){var d={},e,f;for(f in b)d[f]=a.style[f],a.style[f]=b[f];e=c.call(a);for(f in b)a.style[f]=d[f];return e}}),f.curCSS=f.css,c.defaultView&&c.defaultView.getComputedStyle&&(bz=function(a,b){var c,d,e,g,h=a.style;b=b.replace(br,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b))),!f.support.pixelMargin&&e&&bv.test(b)&&bt.test(c)&&(g=h.width,h.width=c,c=e.width,h.width=g);return c}),c.documentElement.currentStyle&&(bA=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f==null&&g&&(e=g[b])&&(f=e),bt.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),by=bz||bA,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth!==0?bB(a,b,d):f.swap(a,bw,function(){return bB(a,b,d)})},set:function(a,b){return bs.test(b)?b+"px":b}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bq.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bp,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bp.test(g)?g.replace(bp,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){return f.swap(a,{display:"inline-block"},function(){return b?by(a,"margin-right"):a.style.marginRight})}})}),f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)}),f.each({margin:"",padding:"",border:"Width"},function(a,b){f.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bx[d]+b]=e[d]||e[d-2]||e[0];return f}}});var bC=/%20/g,bD=/\[\]$/,bE=/\r?\n/g,bF=/#.*$/,bG=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bH=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bI=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bJ=/^(?:GET|HEAD)$/,bK=/^\/\//,bL=/\?/,bM=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bN=/^(?:select|textarea)/i,bO=/\s+/,bP=/([?&])_=[^&]*/,bQ=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bR=f.fn.load,bS={},bT={},bU,bV,bW=["*/"]+["*"];try{bU=e.href}catch(bX){bU=c.createElement("a"),bU.href="",bU=bU.href}bV=bQ.exec(bU.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bR)return bR.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bM,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bN.test(this.nodeName)||bH.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bE,"\r\n")}}):{name:b.name,value:c.replace(bE,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b$(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b$(a,b);return a},ajaxSettings:{url:bU,isLocal:bI.test(bV[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bW},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bY(bS),ajaxTransport:bY(bT),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?ca(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cb(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bG.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bF,"").replace(bK,bV[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bO),d.crossDomain==null&&(r=bQ.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bV[1]&&r[2]==bV[2]&&(r[3]||(r[1]==="http:"?80:443))==(bV[3]||(bV[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bZ(bS,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bJ.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bL.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bP,"$1_="+x);d.url=y+(y===d.url?(bL.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bW+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bZ(bT,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)b_(g,a[g],c,e);return d.join("&").replace(bC,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cc=f.now(),cd=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cc++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=typeof b.data=="string"&&/^application\/x\-www\-form\-urlencoded/.test(b.contentType);if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cd.test(b.url)||e&&cd.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cd,l),b.url===j&&(e&&(k=k.replace(cd,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ce=a.ActiveXObject?function(){for(var a in cg)cg[a](0,1)}:!1,cf=0,cg;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ch()||ci()}:ch,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ce&&delete cg[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n);try{m.text=h.responseText}catch(a){}try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cf,ce&&(cg||(cg={},f(a).unload(ce)),cg[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cj={},ck,cl,cm=/^(?:toggle|show|hide)$/,cn=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,co,cp=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cq;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(ct("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),(e===""&&f.css(d,"display")==="none"||!f.contains(d.ownerDocument.documentElement,d))&&f._data(d,"olddisplay",cu(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(ct("hide",3),a,b,c);var d,e,g=0,h=this.length;for(;g<h;g++)d=this[g],d.style&&(e=f.css(d,"display"),e!=="none"&&!f._data(d,"olddisplay")&&f._data(d,"olddisplay",e));for(g=0;g<h;g++)this[g].style&&(this[g].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(ct("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){function g(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o,p,q;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]);if((k=f.cssHooks[g])&&"expand"in k){l=k.expand(a[g]),delete a[g];for(i in l)i in a||(a[i]=l[i])}}for(g in a){h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(!f.support.inlineBlockNeedsLayout||cu(this.nodeName)==="inline"?this.style.display="inline-block":this.style.zoom=1))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)j=new f.fx(this,b,i),h=a[i],cm.test(h)?(q=f._data(this,"toggle"+i)||(h==="toggle"?d?"show":"hide":0),q?(f._data(this,"toggle"+i,q==="show"?"hide":"show"),j[q]()):j[h]()):(m=cn.exec(h),n=j.cur(),m?(o=parseFloat(m[2]),p=m[3]||(f.cssNumber[i]?"":"px"),p!=="px"&&(f.style(this,i,(o||1)+p),n=(o||1)/j.cur()*n,f.style(this,i,n+p)),m[1]&&(o=(m[1]==="-="?-1:1)*o+n),j.custom(n,o,p)):j.custom(n,h,""));return!0}var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return e.queue===!1?this.each(g):this.queue(e.queue,g)},stop:function(a,c,d){typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]);return this.each(function(){function h(a,b,c){var e=b[c];f.removeData(a,c,!0),e.stop(d)}var b,c=!1,e=f.timers,g=f._data(this);d||f._unmark(!0,this);if(a==null)for(b in g)g[b]&&g[b].stop&&b.indexOf(".run")===b.length-4&&h(this,g,b);else g[b=a+".run"]&&g[b].stop&&h(this,g,b);for(b=e.length;b--;)e[b].elem===this&&(a==null||e[b].queue===a)&&(d?e[b](!0):e[b].saveState(),c=!0,e.splice(b,1));(!d||!c)&&f.dequeue(this,a)})}}),f.each({slideDown:ct("show",1),slideUp:ct("hide",1),slideToggle:ct("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue?f.dequeue(this,d.queue):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a){return a},swing:function(a){return-Math.cos(a*Math.PI)/2+.5}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,c,d){function h(a){return e.step(a)}var e=this,g=f.fx;this.startTime=cq||cr(),this.end=c,this.now=this.start=a,this.pos=this.state=0,this.unit=d||this.unit||(f.cssNumber[this.prop]?"":"px"),h.queue=this.options.queue,h.elem=this.elem,h.saveState=function(){f._data(e.elem,"fxshow"+e.prop)===b&&(e.options.hide?f._data(e.elem,"fxshow"+e.prop,e.start):e.options.show&&f._data(e.elem,"fxshow"+e.prop,e.end))},h()&&f.timers.push(h)&&!co&&(co=setInterval(g.tick,g.interval))},show:function(){var a=f._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=a||f.style(this.elem,this.prop),this.options.show=!0,a!==b?this.custom(this.cur(),a):this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f._data(this.elem,"fxshow"+this.prop)||f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b,c,d,e=cq||cr(),g=!0,h=this.elem,i=this.options;if(a||e>=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||f.fx.stop()},interval:13,stop:function(){clearInterval(co),co=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=a.now+a.unit:a.elem[a.prop]=a.now}}}),f.each(cp.concat.apply([],cp),function(a,b){b.indexOf("margin")&&(f.fx.step[b]=function(a){f.style(a.elem,b,Math.max(0,a.now)+a.unit)})}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cv,cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?cv=function(a,b,c,d){try{d=a.getBoundingClientRect()}catch(e){}if(!d||!f.contains(c,a))return d?{top:d.top,left:d.left}:{top:0,left:0};var g=b.body,h=cy(b),i=c.clientTop||g.clientTop||0,j=c.clientLeft||g.clientLeft||0,k=h.pageYOffset||f.support.boxModel&&c.scrollTop||g.scrollTop,l=h.pageXOffset||f.support.boxModel&&c.scrollLeft||g.scrollLeft,m=d.top+k-i,n=d.left+l-j;return{top:m,left:n}}:cv=function(a,b,c){var d,e=a.offsetParent,g=a,h=b.body,i=b.defaultView,j=i?i.getComputedStyle(a,null):a.currentStyle,k=a.offsetTop,l=a.offsetLeft;while((a=a.parentNode)&&a!==h&&a!==c){if(f.support.fixedPosition&&j.position==="fixed")break;d=i?i.getComputedStyle(a,null):a.currentStyle,k-=a.scrollTop,l-=a.scrollLeft,a===e&&(k+=a.offsetTop,l+=a.offsetLeft,f.support.doesNotAddBorder&&(!f.support.doesAddBorderForTableAndCells||!cw.test(a.nodeName))&&(k+=parseFloat(d.borderTopWidth)||0,l+=parseFloat(d.borderLeftWidth)||0),g=e,e=a.offsetParent),f.support.subtractsBorderForOverflowNotVisible&&d.overflow!=="visible"&&(k+=parseFloat(d.borderTopWidth)||0,l+=parseFloat(d.borderLeftWidth)||0),j=d}if(j.position==="relative"||j.position==="static")k+=h.offsetTop,l+=h.offsetLeft;f.support.fixedPosition&&j.position==="fixed"&&(k+=Math.max(c.scrollTop,h.scrollTop),l+=Math.max(c.scrollLeft,h.scrollLeft));return{top:k,left:l}},f.fn.offset=function(a){if(arguments.length)return a===b?this:this.each(function(b){f.offset.setOffset(this,a,b)});var c=this[0],d=c&&c.ownerDocument;if(!d)return null;if(c===d.body)return f.offset.bodyOffset(c);return cv(c,d,d.documentElement)},f.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);f.fn[a]=function(e){return f.access(this,function(a,e,g){var h=cy(a);if(g===b)return h?c in h?h[c]:f.support.boxModel&&h.document.documentElement[e]||h.document.body[e]:a[e];h?h.scrollTo(d?f(h).scrollLeft():g,d?g:f(h).scrollTop()):a[e]=g},a,e,arguments.length,null)}}),f.each({Height:"height",Width:"width"},function(a,c){var d="client"+a,e="scroll"+a,g="offset"+a;f.fn["inner"+a]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,c,"padding")):this[c]():null},f.fn["outer"+a]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,c,a?"margin":"border")):this[c]():null},f.fn[c]=function(a){return f.access(this,function(a,c,h){var i,j,k,l;if(f.isWindow(a)){i=a.document,j=i.documentElement[d];return f.support.boxModel&&j||i.body&&i.body[d]||j}if(a.nodeType===9){i=a.documentElement;if(i[d]>=i[e])return i[d];return Math.max(a.body[e],i[e],a.body[g],i[g])}if(h===b){k=f.css(a,c),l=parseFloat(k);return f.isNumeric(l)?l:k}f(a).css(c,h)},c,a,arguments.length,null)}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window);
js/bootstrap/jquery-1.8.2.min.js ADDED
@@ -0,0 +1,2 @@
 
 
1
+ /*! jQuery v1.8.2 jquery.com | jquery.org/license */
2
+ (function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function ba(){return!1}function bb(){return!0}function bh(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function bi(a,b){do a=a[b];while(a&&a.nodeType!==1);return a}function bj(a,b,c){b=b||0;if(p.isFunction(b))return p.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return p.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=p.grep(a,function(a){return a.nodeType===1});if(be.test(b))return p.filter(b,d,!c);b=p.filter(b,d)}return p.grep(a,function(a,d){return p.inArray(a,b)>=0===c})}function bk(a){var b=bl.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function bC(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function bD(a,b){if(b.nodeType!==1||!p.hasData(a))return;var c,d,e,f=p._data(a),g=p._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;d<e;d++)p.event.add(b,c,h[c][d])}g.data&&(g.data=p.extend({},g.data))}function bE(a,b){var c;if(b.nodeType!==1)return;b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),c==="object"?(b.parentNode&&(b.outerHTML=a.outerHTML),p.support.html5Clone&&a.innerHTML&&!p.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):c==="input"&&bv.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):c==="option"?b.selected=a.defaultSelected:c==="input"||c==="textarea"?b.defaultValue=a.defaultValue:c==="script"&&b.text!==a.text&&(b.text=a.text),b.removeAttribute(p.expando)}function bF(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bG(a){bv.test(a.type)&&(a.defaultChecked=a.checked)}function bY(a,b){if(b in a)return b;var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=bW.length;while(e--){b=bW[e]+c;if(b in a)return b}return d}function bZ(a,b){return a=b||a,p.css(a,"display")==="none"||!p.contains(a.ownerDocument,a)}function b$(a,b){var c,d,e=[],f=0,g=a.length;for(;f<g;f++){c=a[f];if(!c.style)continue;e[f]=p._data(c,"olddisplay"),b?(!e[f]&&c.style.display==="none"&&(c.style.display=""),c.style.display===""&&bZ(c)&&(e[f]=p._data(c,"olddisplay",cc(c.nodeName)))):(d=bH(c,"display"),!e[f]&&d!=="none"&&p._data(c,"olddisplay",d))}for(f=0;f<g;f++){c=a[f];if(!c.style)continue;if(!b||c.style.display==="none"||c.style.display==="")c.style.display=b?e[f]||"":"none"}return a}function b_(a,b,c){var d=bP.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function ca(a,b,c,d){var e=c===(d?"border":"content")?4:b==="width"?1:0,f=0;for(;e<4;e+=2)c==="margin"&&(f+=p.css(a,c+bV[e],!0)),d?(c==="content"&&(f-=parseFloat(bH(a,"padding"+bV[e]))||0),c!=="margin"&&(f-=parseFloat(bH(a,"border"+bV[e]+"Width"))||0)):(f+=parseFloat(bH(a,"padding"+bV[e]))||0,c!=="padding"&&(f+=parseFloat(bH(a,"border"+bV[e]+"Width"))||0));return f}function cb(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=!0,f=p.support.boxSizing&&p.css(a,"boxSizing")==="border-box";if(d<=0||d==null){d=bH(a,b);if(d<0||d==null)d=a.style[b];if(bQ.test(d))return d;e=f&&(p.support.boxSizingReliable||d===a.style[b]),d=parseFloat(d)||0}return d+ca(a,b,c||(f?"border":"content"),e)+"px"}function cc(a){if(bS[a])return bS[a];var b=p("<"+a+">").appendTo(e.body),c=b.css("display");b.remove();if(c==="none"||c===""){bI=e.body.appendChild(bI||p.extend(e.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!bJ||!bI.createElement)bJ=(bI.contentWindow||bI.contentDocument).document,bJ.write("<!doctype html><html><body>"),bJ.close();b=bJ.body.appendChild(bJ.createElement(a)),c=bH(b,"display"),e.body.removeChild(bI)}return bS[a]=c,c}function ci(a,b,c,d){var e;if(p.isArray(b))p.each(b,function(b,e){c||ce.test(a)?d(a,e):ci(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&p.type(b)==="object")for(e in b)ci(a+"["+e+"]",b[e],c,d);else d(a,b)}function cz(a){return function(b,c){typeof b!="string"&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(s),h=0,i=g.length;if(p.isFunction(c))for(;h<i;h++)d=g[h],f=/^\+/.test(d),f&&(d=d.substr(1)||"*"),e=a[d]=a[d]||[],e[f?"unshift":"push"](c)}}function cA(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h,i=a[f],j=0,k=i?i.length:0,l=a===cv;for(;j<k&&(l||!h);j++)h=i[j](c,d,e),typeof h=="string"&&(!l||g[h]?h=b:(c.dataTypes.unshift(h),h=cA(a,c,d,e,h,g)));return(l||!h)&&!g["*"]&&(h=cA(a,c,d,e,"*",g)),h}function cB(a,c){var d,e,f=p.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((f[d]?a:e||(e={}))[d]=c[d]);e&&p.extend(!0,a,e)}function cC(a,c,d){var e,f,g,h,i=a.contents,j=a.dataTypes,k=a.responseFields;for(f in k)f in d&&(c[k[f]]=d[f]);while(j[0]==="*")j.shift(),e===b&&(e=a.mimeType||c.getResponseHeader("content-type"));if(e)for(f in i)if(i[f]&&i[f].test(e)){j.unshift(f);break}if(j[0]in d)g=j[0];else{for(f in d){if(!j[0]||a.converters[f+" "+j[0]]){g=f;break}h||(h=f)}g=g||h}if(g)return g!==j[0]&&j.unshift(g),d[g]}function cD(a,b){var c,d,e,f,g=a.dataTypes.slice(),h=g[0],i={},j=0;a.dataFilter&&(b=a.dataFilter(b,a.dataType));if(g[1])for(c in a.converters)i[c.toLowerCase()]=a.converters[c];for(;e=g[++j];)if(e!=="*"){if(h!=="*"&&h!==e){c=i[h+" "+e]||i["* "+e];if(!c)for(d in i){f=d.split(" ");if(f[1]===e){c=i[h+" "+f[0]]||i["* "+f[0]];if(c){c===!0?c=i[d]:i[d]!==!0&&(e=f[0],g.splice(j--,0,e));break}}}if(c!==!0)if(c&&a["throws"])b=c(b);else try{b=c(b)}catch(k){return{state:"parsererror",error:c?k:"No conversion from "+h+" to "+e}}}h=e}return{state:"success",data:b}}function cL(){try{return new a.XMLHttpRequest}catch(b){}}function cM(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function cU(){return setTimeout(function(){cN=b},0),cN=p.now()}function cV(a,b){p.each(b,function(b,c){var d=(cT[b]||[]).concat(cT["*"]),e=0,f=d.length;for(;e<f;e++)if(d[e].call(a,b,c))return})}function cW(a,b,c){var d,e=0,f=0,g=cS.length,h=p.Deferred().always(function(){delete i.elem}),i=function(){var b=cN||cU(),c=Math.max(0,j.startTime+j.duration-b),d=1-(c/j.duration||0),e=0,f=j.tweens.length;for(;e<f;e++)j.tweens[e].run(d);return h.notifyWith(a,[j,d,c]),d<1&&f?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:p.extend({},b),opts:p.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:cN||cU(),duration:c.duration,tweens:[],createTween:function(b,c,d){var e=p.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(e),e},stop:function(b){var c=0,d=b?j.tweens.length:0;for(;c<d;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;cX(k,j.opts.specialEasing);for(;e<g;e++){d=cS[e].call(j,a,k,j.opts);if(d)return d}return cV(j,k),p.isFunction(j.opts.start)&&j.opts.start.call(a,j),p.fx.timer(p.extend(i,{anim:j,queue:j.opts.queue,elem:a})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function cX(a,b){var c,d,e,f,g;for(c in a){d=p.camelCase(c),e=b[d],f=a[c],p.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=p.cssHooks[d];if(g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}}function cY(a,b,c){var d,e,f,g,h,i,j,k,l=this,m=a.style,n={},o=[],q=a.nodeType&&bZ(a);c.queue||(j=p._queueHooks(a,"fx"),j.unqueued==null&&(j.unqueued=0,k=j.empty.fire,j.empty.fire=function(){j.unqueued||k()}),j.unqueued++,l.always(function(){l.always(function(){j.unqueued--,p.queue(a,"fx").length||j.empty.fire()})})),a.nodeType===1&&("height"in b||"width"in b)&&(c.overflow=[m.overflow,m.overflowX,m.overflowY],p.css(a,"display")==="inline"&&p.css(a,"float")==="none"&&(!p.support.inlineBlockNeedsLayout||cc(a.nodeName)==="inline"?m.display="inline-block":m.zoom=1)),c.overflow&&(m.overflow="hidden",p.support.shrinkWrapBlocks||l.done(function(){m.overflow=c.overflow[0],m.overflowX=c.overflow[1],m.overflowY=c.overflow[2]}));for(d in b){f=b[d];if(cP.exec(f)){delete b[d];if(f===(q?"hide":"show"))continue;o.push(d)}}g=o.length;if(g){h=p._data(a,"fxshow")||p._data(a,"fxshow",{}),q?p(a).show():l.done(function(){p(a).hide()}),l.done(function(){var b;p.removeData(a,"fxshow",!0);for(b in n)p.style(a,b,n[b])});for(d=0;d<g;d++)e=o[d],i=l.createTween(e,q?h[e]:0),n[e]=h[e]||p.style(a,e),e in h||(h[e]=i.start,q&&(i.end=i.start,i.start=e==="width"||e==="height"?1:0))}}function cZ(a,b,c,d,e){return new cZ.prototype.init(a,b,c,d,e)}function c$(a,b){var c,d={height:a},e=0;b=b?1:0;for(;e<4;e+=2-b)c=bV[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function da(a){return p.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}var c,d,e=a.document,f=a.location,g=a.navigator,h=a.jQuery,i=a.$,j=Array.prototype.push,k=Array.prototype.slice,l=Array.prototype.indexOf,m=Object.prototype.toString,n=Object.prototype.hasOwnProperty,o=String.prototype.trim,p=function(a,b){return new p.fn.init(a,b,c)},q=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,r=/\S/,s=/\s+/,t=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,u=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,y=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,z=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,A=/^-ms-/,B=/-([\da-z])/gi,C=function(a,b){return(b+"").toUpperCase()},D=function(){e.addEventListener?(e.removeEventListener("DOMContentLoaded",D,!1),p.ready()):e.readyState==="complete"&&(e.detachEvent("onreadystatechange",D),p.ready())},E={};p.fn=p.prototype={constructor:p,init:function(a,c,d){var f,g,h,i;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if(typeof a=="string"){a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3?f=[null,a,null]:f=u.exec(a);if(f&&(f[1]||!c)){if(f[1])return c=c instanceof p?c[0]:c,i=c&&c.nodeType?c.ownerDocument||c:e,a=p.parseHTML(f[1],i,!0),v.test(f[1])&&p.isPlainObject(c)&&this.attr.call(a,c,!0),p.merge(this,a);g=e.getElementById(f[2]);if(g&&g.parentNode){if(g.id!==f[2])return d.find(a);this.length=1,this[0]=g}return this.context=e,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return p.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),p.makeArray(a,this))},selector:"",jquery:"1.8.2",length:0,size:function(){return this.length},toArray:function(){return k.call(this)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=p.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return p.each(this,a,b)},ready:function(a){return p.ready.promise().done(a),this},eq:function(a){return a=+a,a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(k.apply(this,arguments),"slice",k.call(arguments).join(","))},map:function(a){return this.pushStack(p.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:j,sort:[].sort,splice:[].splice},p.fn.init.prototype=p.fn,p.extend=p.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;typeof h=="boolean"&&(k=h,h=arguments[1]||{},i=2),typeof h!="object"&&!p.isFunction(h)&&(h={}),j===i&&(h=this,--i);for(;i<j;i++)if((a=arguments[i])!=null)for(c in a){d=h[c],e=a[c];if(h===e)continue;k&&e&&(p.isPlainObject(e)||(f=p.isArray(e)))?(f?(f=!1,g=d&&p.isArray(d)?d:[]):g=d&&p.isPlainObject(d)?d:{},h[c]=p.extend(k,g,e)):e!==b&&(h[c]=e)}return h},p.extend({noConflict:function(b){return a.$===p&&(a.$=i),b&&a.jQuery===p&&(a.jQuery=h),p},isReady:!1,readyWait:1,holdReady:function(a){a?p.readyWait++:p.ready(!0)},ready:function(a){if(a===!0?--p.readyWait:p.isReady)return;if(!e.body)return setTimeout(p.ready,1);p.isReady=!0;if(a!==!0&&--p.readyWait>0)return;d.resolveWith(e,[p]),p.fn.trigger&&p(e).trigger("ready").off("ready")},isFunction:function(a){return p.type(a)==="function"},isArray:Array.isArray||function(a){return p.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):E[m.call(a)]||"object"},isPlainObject:function(a){if(!a||p.type(a)!=="object"||a.nodeType||p.isWindow(a))return!1;try{if(a.constructor&&!n.call(a,"constructor")&&!n.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||n.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return!a||typeof a!="string"?null:(typeof b=="boolean"&&(c=b,b=0),b=b||e,(d=v.exec(a))?[b.createElement(d[1])]:(d=p.buildFragment([a],b,c?null:[]),p.merge([],(d.cacheable?p.clone(d.fragment):d.fragment).childNodes)))},parseJSON:function(b){if(!b||typeof b!="string")return null;b=p.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(w.test(b.replace(y,"@").replace(z,"]").replace(x,"")))return(new Function("return "+b))();p.error("Invalid JSON: "+b)},parseXML:function(c){var d,e;if(!c||typeof c!="string")return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&p.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&r.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(A,"ms-").replace(B,C)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||p.isFunction(a);if(d){if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;f<g;)if(c.apply(a[f++],d)===!1)break}else if(h){for(e in a)if(c.call(a[e],e,a[e])===!1)break}else for(;f<g;)if(c.call(a[f],f,a[f++])===!1)break;return a},trim:o&&!o.call(" ")?function(a){return a==null?"":o.call(a)}:function(a){return a==null?"":(a+"").replace(t,"")},makeArray:function(a,b){var c,d=b||[];return a!=null&&(c=p.type(a),a.length==null||c==="string"||c==="function"||c==="regexp"||p.isWindow(a)?j.call(d,a):p.merge(d,a)),d},inArray:function(a,b,c){var d;if(b){if(l)return l.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=c.length,e=a.length,f=0;if(typeof d=="number")for(;f<d;f++)a[e++]=c[f];else while(c[f]!==b)a[e++]=c[f++];return a.length=e,a},grep:function(a,b,c){var d,e=[],f=0,g=a.length;c=!!c;for(;f<g;f++)d=!!b(a[f],f),c!==d&&e.push(a[f]);return e},map:function(a,c,d){var e,f,g=[],h=0,i=a.length,j=a instanceof p||i!==b&&typeof i=="number"&&(i>0&&a[0]&&a[i-1]||i===0||p.isArray(a));if(j)for(;h<i;h++)e=c(a[h],h,d),e!=null&&(g[g.length]=e);else for(f in a)e=c(a[f],f,d),e!=null&&(g[g.length]=e);return g.concat.apply([],g)},guid:1,proxy:function(a,c){var d,e,f;return typeof c=="string"&&(d=a[c],c=a,a=d),p.isFunction(a)?(e=k.call(arguments,2),f=function(){return a.apply(c,e.concat(k.call(arguments)))},f.guid=a.guid=a.guid||p.guid++,f):b},access:function(a,c,d,e,f,g,h){var i,j=d==null,k=0,l=a.length;if(d&&typeof d=="object"){for(k in d)p.access(a,c,k,d[k],1,g,e);f=1}else if(e!==b){i=h===b&&p.isFunction(e),j&&(i?(i=c,c=function(a,b,c){return i.call(p(a),c)}):(c.call(a,e),c=null));if(c)for(;k<l;k++)c(a[k],d,i?e.call(a[k],k,c(a[k],d)):e,h);f=1}return f?a:j?c.call(a):l?c(a[0],d):g},now:function(){return(new Date).getTime()}}),p.ready.promise=function(b){if(!d){d=p.Deferred();if(e.readyState==="complete")setTimeout(p.ready,1);else if(e.addEventListener)e.addEventListener("DOMContentLoaded",D,!1),a.addEventListener("load",p.ready,!1);else{e.attachEvent("onreadystatechange",D),a.attachEvent("onload",p.ready);var c=!1;try{c=a.frameElement==null&&e.documentElement}catch(f){}c&&c.doScroll&&function g(){if(!p.isReady){try{c.doScroll("left")}catch(a){return setTimeout(g,50)}p.ready()}}()}}return d.promise(b)},p.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){E["[object "+b+"]"]=b.toLowerCase()}),c=p(e);var F={};p.Callbacks=function(a){a=typeof a=="string"?F[a]||G(a):p.extend({},a);var c,d,e,f,g,h,i=[],j=!a.once&&[],k=function(b){c=a.memory&&b,d=!0,h=f||0,f=0,g=i.length,e=!0;for(;i&&h<g;h++)if(i[h].apply(b[0],b[1])===!1&&a.stopOnFalse){c=!1;break}e=!1,i&&(j?j.length&&k(j.shift()):c?i=[]:l.disable())},l={add:function(){if(i){var b=i.length;(function d(b){p.each(b,function(b,c){var e=p.type(c);e==="function"&&(!a.unique||!l.has(c))?i.push(c):c&&c.length&&e!=="string"&&d(c)})})(arguments),e?g=i.length:c&&(f=b,k(c))}return this},remove:function(){return i&&p.each(arguments,function(a,b){var c;while((c=p.inArray(b,i,c))>-1)i.splice(c,1),e&&(c<=g&&g--,c<=h&&h--)}),this},has:function(a){return p.inArray(a,i)>-1},empty:function(){return i=[],this},disable:function(){return i=j=c=b,this},disabled:function(){return!i},lock:function(){return j=b,c||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],i&&(!d||j)&&(e?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!d}};return l},p.extend({Deferred:function(a){var b=[["resolve","done",p.Callbacks("once memory"),"resolved"],["reject","fail",p.Callbacks("once memory"),"rejected"],["notify","progress",p.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return p.Deferred(function(c){p.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]](p.isFunction(g)?function(){var a=g.apply(this,arguments);a&&p.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return a!=null?p.extend(a,d):d}},e={};return d.pipe=d.then,p.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[a^1][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=k.call(arguments),d=c.length,e=d!==1||a&&p.isFunction(a.promise)?d:0,f=e===1?a:p.Deferred(),g=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?k.call(arguments):d,c===h?f.notifyWith(b,c):--e||f.resolveWith(b,c)}},h,i,j;if(d>1){h=new Array(d),i=new Array(d),j=new Array(d);for(;b<d;b++)c[b]&&p.isFunction(c[b].promise)?c[b].promise().done(g(b,j,c)).fail(f.reject).progress(g(b,i,h)):--e}return e||f.resolveWith(j,c),f.promise()}}),p.support=function(){var b,c,d,f,g,h,i,j,k,l,m,n=e.createElement("div");n.setAttribute("className","t"),n.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",c=n.getElementsByTagName("*"),d=n.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5";if(!c||!c.length)return{};f=e.createElement("select"),g=f.appendChild(e.createElement("option")),h=n.getElementsByTagName("input")[0],b={leadingWhitespace:n.firstChild.nodeType===3,tbody:!n.getElementsByTagName("tbody").length,htmlSerialize:!!n.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:d.getAttribute("href")==="/a",opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:n.className!=="t",enctype:!!e.createElement("form").enctype,html5Clone:e.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",boxModel:e.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},h.checked=!0,b.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,b.optDisabled=!g.disabled;try{delete n.test}catch(o){b.deleteExpando=!1}!n.addEventListener&&n.attachEvent&&n.fireEvent&&(n.attachEvent("onclick",m=function(){b.noCloneEvent=!1}),n.cloneNode(!0).fireEvent("onclick"),n.detachEvent("onclick",m)),h=e.createElement("input"),h.value="t",h.setAttribute("type","radio"),b.radioValue=h.value==="t",h.setAttribute("checked","checked"),h.setAttribute("name","t"),n.appendChild(h),i=e.createDocumentFragment(),i.appendChild(n.lastChild),b.checkClone=i.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=h.checked,i.removeChild(h),i.appendChild(n);if(n.attachEvent)for(k in{submit:!0,change:!0,focusin:!0})j="on"+k,l=j in n,l||(n.setAttribute(j,"return;"),l=typeof n[j]=="function"),b[k+"Bubbles"]=l;return p(function(){var c,d,f,g,h="padding:0;margin:0;border:0;display:block;overflow:hidden;",i=e.getElementsByTagName("body")[0];if(!i)return;c=e.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",i.insertBefore(c,i.firstChild),d=e.createElement("div"),c.appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",f=d.getElementsByTagName("td"),f[0].style.cssText="padding:0;margin:0;border:0;display:none",l=f[0].offsetHeight===0,f[0].style.display="",f[1].style.display="none",b.reliableHiddenOffsets=l&&f[0].offsetHeight===0,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=d.offsetWidth===4,b.doesNotIncludeMarginInBodyOffset=i.offsetTop!==1,a.getComputedStyle&&(b.pixelPosition=(a.getComputedStyle(d,null)||{}).top!=="1%",b.boxSizingReliable=(a.getComputedStyle(d,null)||{width:"4px"}).width==="4px",g=e.createElement("div"),g.style.cssText=d.style.cssText=h,g.style.marginRight=g.style.width="0",d.style.width="1px",d.appendChild(g),b.reliableMarginRight=!parseFloat((a.getComputedStyle(g,null)||{}).marginRight)),typeof d.style.zoom!="undefined"&&(d.innerHTML="",d.style.cssText=h+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=d.offsetWidth===3,d.style.display="block",d.style.overflow="visible",d.innerHTML="<div></div>",d.firstChild.style.width="5px",b.shrinkWrapBlocks=d.offsetWidth!==3,c.style.zoom=1),i.removeChild(c),c=d=f=g=null}),i.removeChild(n),c=d=f=g=h=i=n=null,b}();var H=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,I=/([A-Z])/g;p.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(p.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?p.cache[a[p.expando]]:a[p.expando],!!a&&!K(a)},data:function(a,c,d,e){if(!p.acceptData(a))return;var f,g,h=p.expando,i=typeof c=="string",j=a.nodeType,k=j?p.cache:a,l=j?a[h]:a[h]&&h;if((!l||!k[l]||!e&&!k[l].data)&&i&&d===b)return;l||(j?a[h]=l=p.deletedIds.pop()||p.guid++:l=h),k[l]||(k[l]={},j||(k[l].toJSON=p.noop));if(typeof c=="object"||typeof c=="function")e?k[l]=p.extend(k[l],c):k[l].data=p.extend(k[l].data,c);return f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[p.camelCase(c)]=d),i?(g=f[c],g==null&&(g=f[p.camelCase(c)])):g=f,g},removeData:function(a,b,c){if(!p.acceptData(a))return;var d,e,f,g=a.nodeType,h=g?p.cache:a,i=g?a[p.expando]:p.expando;if(!h[i])return;if(b){d=c?h[i]:h[i].data;if(d){p.isArray(b)||(b in d?b=[b]:(b=p.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e<f;e++)delete d[b[e]];if(!(c?K:p.isEmptyObject)(d))return}}if(!c){delete h[i].data;if(!K(h[i]))return}g?p.cleanData([a],!0):p.support.deleteExpando||h!=h.window?delete h[i]:h[i]=null},_data:function(a,b,c){return p.data(a,b,c,!0)},acceptData:function(a){var b=a.nodeName&&p.noData[a.nodeName.toLowerCase()];return!b||b!==!0&&a.getAttribute("classid")===b}}),p.fn.extend({data:function(a,c){var d,e,f,g,h,i=this[0],j=0,k=null;if(a===b){if(this.length){k=p.data(i);if(i.nodeType===1&&!p._data(i,"parsedAttrs")){f=i.attributes;for(h=f.length;j<h;j++)g=f[j].name,g.indexOf("data-")||(g=p.camelCase(g.substring(5)),J(i,g,k[g]));p._data(i,"parsedAttrs",!0)}}return k}return typeof a=="object"?this.each(function(){p.data(this,a)}):(d=a.split(".",2),d[1]=d[1]?"."+d[1]:"",e=d[1]+"!",p.access(this,function(c){if(c===b)return k=this.triggerHandler("getData"+e,[d[0]]),k===b&&i&&(k=p.data(i,a),k=J(i,a,k)),k===b&&d[1]?this.data(d[0]):k;d[1]=c,this.each(function(){var b=p(this);b.triggerHandler("setData"+e,d),p.data(this,a,c),b.triggerHandler("changeData"+e,d)})},null,c,arguments.length>1,null,!1))},removeData:function(a){return this.each(function(){p.removeData(this,a)})}}),p.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=p._data(a,b),c&&(!d||p.isArray(c)?d=p._data(a,b,p.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=p.queue(a,b),d=c.length,e=c.shift(),f=p._queueHooks(a,b),g=function(){p.dequeue(a,b)};e==="inprogress"&&(e=c.shift(),d--),e&&(b==="fx"&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return p._data(a,c)||p._data(a,c,{empty:p.Callbacks("once memory").add(function(){p.removeData(a,b+"queue",!0),p.removeData(a,c,!0)})})}}),p.fn.extend({queue:function(a,c){var d=2;return typeof a!="string"&&(c=a,a="fx",d--),arguments.length<d?p.queue(this[0],a):c===b?this:this.each(function(){var b=p.queue(this,a,c);p._queueHooks(this,a),a==="fx"&&b[0]!=="inprogress"&&p.dequeue(this,a)})},dequeue:function(a){return this.each(function(){p.dequeue(this,a)})},delay:function(a,b){return a=p.fx?p.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){var d,e=1,f=p.Deferred(),g=this,h=this.length,i=function(){--e||f.resolveWith(g,[g])};typeof a!="string"&&(c=a,a=b),a=a||"fx";while(h--)d=p._data(g[h],a+"queueHooks"),d&&d.empty&&(e++,d.empty.add(i));return i(),f.promise(c)}});var L,M,N,O=/[\t\r\n]/g,P=/\r/g,Q=/^(?:button|input)$/i,R=/^(?:button|input|object|select|textarea)$/i,S=/^a(?:rea|)$/i,T=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,U=p.support.getSetAttribute;p.fn.extend({attr:function(a,b){return p.access(this,p.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){p.removeAttr(this,a)})},prop:function(a,b){return p.access(this,p.prop,a,b,arguments.length>1)},removeProp:function(a){return a=p.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if(p.isFunction(a))return this.each(function(b){p(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(s);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{f=" "+e.className+" ";for(g=0,h=b.length;g<h;g++)f.indexOf(" "+b[g]+" ")<0&&(f+=b[g]+" ");e.className=p.trim(f)}}}return this},removeClass:function(a){var c,d,e,f,g,h,i;if(p.isFunction(a))return this.each(function(b){p(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(s);for(h=0,i=this.length;h<i;h++){e=this[h];if(e.nodeType===1&&e.className){d=(" "+e.className+" ").replace(O," ");for(f=0,g=c.length;f<g;f++)while(d.indexOf(" "+c[f]+" ")>=0)d=d.replace(" "+c[f]+" "," ");e.className=a?p.trim(d):""}}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";return p.isFunction(a)?this.each(function(c){p(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if(c==="string"){var e,f=0,g=p(this),h=b,i=a.split(s);while(e=i[f++])h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&p._data(this,"__className__",this.className),this.className=this.className||a===!1?"":p._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(O," ").indexOf(b)>=0)return!0;return!1},val:function(a){var c,d,e,f=this[0];if(!arguments.length){if(f)return c=p.valHooks[f.type]||p.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,typeof d=="string"?d.replace(P,""):d==null?"":d);return}return e=p.isFunction(a),this.each(function(d){var f,g=p(this);if(this.nodeType!==1)return;e?f=a.call(this,d,g.val()):f=a,f==null?f="":typeof f=="number"?f+="":p.isArray(f)&&(f=p.map(f,function(a){return a==null?"":a+""})),c=p.valHooks[this.type]||p.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,f,"value")===b)this.value=f})}}),p.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i=a.type==="select-one";if(f<0)return null;c=i?f:0,d=i?f+1:h.length;for(;c<d;c++){e=h[c];if(e.selected&&(p.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!p.nodeName(e.parentNode,"optgroup"))){b=p(e).val();if(i)return b;g.push(b)}}return i&&!g.length&&h.length?p(h[f]).val():g},set:function(a,b){var c=p.makeArray(b);return p(a).find("option").each(function(){this.selected=p.inArray(p(this).val(),c)>=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(!a||i===3||i===8||i===2)return;if(e&&p.isFunction(p.fn[c]))return p(a)[c](d);if(typeof a.getAttribute=="undefined")return p.prop(a,c,d);h=i!==1||!p.isXMLDoc(a),h&&(c=c.toLowerCase(),g=p.attrHooks[c]||(T.test(c)?M:L));if(d!==b){if(d===null){p.removeAttr(a,c);return}return g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,d+""),d)}return g&&"get"in g&&h&&(f=g.get(a,c))!==null?f:(f=a.getAttribute(c),f===null?b:f)},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&a.nodeType===1){d=b.split(s);for(;g<d.length;g++)e=d[g],e&&(c=p.propFix[e]||e,f=T.test(e),f||p.attr(a,e,""),a.removeAttribute(U?e:c),f&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(Q.test(a.nodeName)&&a.parentNode)p.error("type property can't be changed");else if(!p.support.radioValue&&b==="radio"&&p.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}},value:{get:function(a,b){return L&&p.nodeName(a,"button")?L.get(a,b):b in a?a.value:null},set:function(a,b,c){if(L&&p.nodeName(a,"button"))return L.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,f,g,h=a.nodeType;if(!a||h===3||h===8||h===2)return;return g=h!==1||!p.isXMLDoc(a),g&&(c=p.propFix[c]||c,f=p.propHooks[c]),d!==b?f&&"set"in f&&(e=f.set(a,d,c))!==b?e:a[c]=d:f&&"get"in f&&(e=f.get(a,c))!==null?e:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):R.test(a.nodeName)||S.test(a.nodeName)&&a.href?0:b}}}}),M={get:function(a,c){var d,e=p.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;return b===!1?p.removeAttr(a,c):(d=p.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase())),c}},U||(N={name:!0,id:!0,coords:!0},L=p.valHooks.button={get:function(a,c){var d;return d=a.getAttributeNode(c),d&&(N[c]?d.value!=="":d.specified)?d.value:b},set:function(a,b,c){var d=a.getAttributeNode(c);return d||(d=e.createAttribute(c),a.setAttributeNode(d)),d.value=b+""}},p.each(["width","height"],function(a,b){p.attrHooks[b]=p.extend(p.attrHooks[b],{set:function(a,c){if(c==="")return a.setAttribute(b,"auto"),c}})}),p.attrHooks.contenteditable={get:L.get,set:function(a,b,c){b===""&&(b="false"),L.set(a,b,c)}}),p.support.hrefNormalized||p.each(["href","src","width","height"],function(a,c){p.attrHooks[c]=p.extend(p.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),p.support.style||(p.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=b+""}}),p.support.optSelected||(p.propHooks.selected=p.extend(p.propHooks.selected,{get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}})),p.support.enctype||(p.propFix.enctype="encoding"),p.support.checkOn||p.each(["radio","checkbox"],function(){p.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),p.each(["radio","checkbox"],function(){p.valHooks[this]=p.extend(p.valHooks[this],{set:function(a,b){if(p.isArray(b))return a.checked=p.inArray(p(a).val(),b)>=0}})});var V=/^(?:textarea|input|select)$/i,W=/^([^\.]*|)(?:\.(.+)|)$/,X=/(?:^|\s)hover(\.\S+|)\b/,Y=/^key/,Z=/^(?:mouse|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=function(a){return p.event.special.hover?a:a.replace(X,"mouseenter$1 mouseleave$1")};p.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,q,r;if(a.nodeType===3||a.nodeType===8||!c||!d||!(g=p._data(a)))return;d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=p.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return typeof p!="undefined"&&(!a||p.event.triggered!==a.type)?p.event.dispatch.apply(h.elem,arguments):b},h.elem=a),c=p.trim(_(c)).split(" ");for(j=0;j<c.length;j++){k=W.exec(c[j])||[],l=k[1],m=(k[2]||"").split(".").sort(),r=p.event.special[l]||{},l=(f?r.delegateType:r.bindType)||l,r=p.event.special[l]||{},n=p.extend({type:l,origType:k[1],data:e,handler:d,guid:d.guid,selector:f,needsContext:f&&p.expr.match.needsContext.test(f),namespace:m.join(".")},o),q=i[l];if(!q){q=i[l]=[],q.delegateCount=0;if(!r.setup||r.setup.call(a,e,m,h)===!1)a.addEventListener?a.addEventListener(l,h,!1):a.attachEvent&&a.attachEvent("on"+l,h)}r.add&&(r.add.call(a,n),n.handler.guid||(n.handler.guid=d.guid)),f?q.splice(q.delegateCount++,0,n):q.push(n),p.event.global[l]=!0}a=null},global:{},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,q,r=p.hasData(a)&&p._data(a);if(!r||!(m=r.events))return;b=p.trim(_(b||"")).split(" ");for(f=0;f<b.length;f++){g=W.exec(b[f])||[],h=i=g[1],j=g[2];if(!h){for(h in m)p.event.remove(a,h+b[f],c,d,!0);continue}n=p.event.special[h]||{},h=(d?n.delegateType:n.bindType)||h,o=m[h]||[],k=o.length,j=j?new RegExp("(^|\\.)"+j.split(".").sort().join("\\.(?:.*\\.|)")+"(\\.|$)"):null;for(l=0;l<o.length;l++)q=o[l],(e||i===q.origType)&&(!c||c.guid===q.guid)&&(!j||j.test(q.namespace))&&(!d||d===q.selector||d==="**"&&q.selector)&&(o.splice(l--,1),q.selector&&o.delegateCount--,n.remove&&n.remove.call(a,q));o.length===0&&k!==o.length&&((!n.teardown||n.teardown.call(a,j,r.handle)===!1)&&p.removeEvent(a,h,r.handle),delete m[h])}p.isEmptyObject(m)&&(delete r.handle,p.removeData(a,"events",!0))},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,f,g){if(!f||f.nodeType!==3&&f.nodeType!==8){var h,i,j,k,l,m,n,o,q,r,s=c.type||c,t=[];if($.test(s+p.event.triggered))return;s.indexOf("!")>=0&&(s=s.slice(0,-1),i=!0),s.indexOf(".")>=0&&(t=s.split("."),s=t.shift(),t.sort());if((!f||p.event.customEvent[s])&&!p.event.global[s])return;c=typeof c=="object"?c[p.expando]?c:new p.Event(s,c):new p.Event(s),c.type=s,c.isTrigger=!0,c.exclusive=i,c.namespace=t.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+t.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,m=s.indexOf(":")<0?"on"+s:"";if(!f){h=p.cache;for(j in h)h[j].events&&h[j].events[s]&&p.event.trigger(c,d,h[j].handle.elem,!0);return}c.result=b,c.target||(c.target=f),d=d!=null?p.makeArray(d):[],d.unshift(c),n=p.event.special[s]||{};if(n.trigger&&n.trigger.apply(f,d)===!1)return;q=[[f,n.bindType||s]];if(!g&&!n.noBubble&&!p.isWindow(f)){r=n.delegateType||s,k=$.test(r+s)?f:f.parentNode;for(l=f;k;k=k.parentNode)q.push([k,r]),l=k;l===(f.ownerDocument||e)&&q.push([l.defaultView||l.parentWindow||a,r])}for(j=0;j<q.length&&!c.isPropagationStopped();j++)k=q[j][0],c.type=q[j][1],o=(p._data(k,"events")||{})[c.type]&&p._data(k,"handle"),o&&o.apply(k,d),o=m&&k[m],o&&p.acceptData(k)&&o.apply&&o.apply(k,d)===!1&&c.preventDefault();return c.type=s,!g&&!c.isDefaultPrevented()&&(!n._default||n._default.apply(f.ownerDocument,d)===!1)&&(s!=="click"||!p.nodeName(f,"a"))&&p.acceptData(f)&&m&&f[s]&&(s!=="focus"&&s!=="blur"||c.target.offsetWidth!==0)&&!p.isWindow(f)&&(l=f[m],l&&(f[m]=null),p.event.triggered=s,f[s](),p.event.triggered=b,l&&(f[m]=l)),c.result}return},dispatch:function(c){c=p.event.fix(c||a.event);var d,e,f,g,h,i,j,l,m,n,o=(p._data(this,"events")||{})[c.type]||[],q=o.delegateCount,r=k.call(arguments),s=!c.exclusive&&!c.namespace,t=p.event.special[c.type]||{},u=[];r[0]=c,c.delegateTarget=this;if(t.preDispatch&&t.preDispatch.call(this,c)===!1)return;if(q&&(!c.button||c.type!=="click"))for(f=c.target;f!=this;f=f.parentNode||this)if(f.disabled!==!0||c.type!=="click"){h={},j=[];for(d=0;d<q;d++)l=o[d],m=l.selector,h[m]===b&&(h[m]=l.needsContext?p(m,this).index(f)>=0:p.find(m,this,null,[f]).length),h[m]&&j.push(l);j.length&&u.push({elem:f,matches:j})}o.length>q&&u.push({elem:this,matches:o.slice(q)});for(d=0;d<u.length&&!c.isPropagationStopped();d++){i=u[d],c.currentTarget=i.elem;for(e=0;e<i.matches.length&&!c.isImmediatePropagationStopped();e++){l=i.matches[e];if(s||!c.namespace&&!l.namespace||c.namespace_re&&c.namespace_re.test(l.namespace))c.data=l.data,c.handleObj=l,g=((p.event.special[l.origType]||{}).handle||l.handler).apply(i.elem,r),g!==b&&(c.result=g,g===!1&&(c.preventDefault(),c.stopPropagation()))}}return t.postDispatch&&t.postDispatch.call(this,c),c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,c){var d,f,g,h=c.button,i=c.fromElement;return a.pageX==null&&c.clientX!=null&&(d=a.target.ownerDocument||e,f=d.documentElement,g=d.body,a.pageX=c.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=c.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?c.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0),a}},fix:function(a){if(a[p.expando])return a;var b,c,d=a,f=p.event.fixHooks[a.type]||{},g=f.props?this.props.concat(f.props):this.props;a=p.Event(d);for(b=g.length;b;)c=g[--b],a[c]=d[c];return a.target||(a.target=d.srcElement||e),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,f.filter?f.filter(a,d):a},special:{load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){p.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=p.extend(new p.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?p.event.trigger(e,null,b):p.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},p.event.handle=p.event.dispatch,p.removeEvent=e.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]=="undefined"&&(a[d]=null),a.detachEvent(d,c))},p.Event=function(a,b){if(this instanceof p.Event)a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?bb:ba):this.type=a,b&&p.extend(this,b),this.timeStamp=a&&a.timeStamp||p.now(),this[p.expando]=!0;else return new p.Event(a,b)},p.Event.prototype={preventDefault:function(){this.isDefaultPrevented=bb;var a=this.originalEvent;if(!a)return;a.preventDefault?a.preventDefault():a.returnValue=!1},stopPropagation:function(){this.isPropagationStopped=bb;var a=this.originalEvent;if(!a)return;a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=bb,this.stopPropagation()},isDefaultPrevented:ba,isPropagationStopped:ba,isImmediatePropagationStopped:ba},p.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){p.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj,g=f.selector;if(!e||e!==d&&!p.contains(d,e))a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b;return c}}}),p.support.submitBubbles||(p.event.special.submit={setup:function(){if(p.nodeName(this,"form"))return!1;p.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=p.nodeName(c,"input")||p.nodeName(c,"button")?c.form:b;d&&!p._data(d,"_submit_attached")&&(p.event.add(d,"submit._submit",function(a){a._submit_bubble=!0}),p._data(d,"_submit_attached",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&p.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){if(p.nodeName(this,"form"))return!1;p.event.remove(this,"._submit")}}),p.support.changeBubbles||(p.event.special.change={setup:function(){if(V.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")p.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),p.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),p.event.simulate("change",this,a,!0)});return!1}p.event.add(this,"beforeactivate._change",function(a){var b=a.target;V.test(b.nodeName)&&!p._data(b,"_change_attached")&&(p.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&p.event.simulate("change",this.parentNode,a,!0)}),p._data(b,"_change_attached",!0))})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){return p.event.remove(this,"._change"),!V.test(this.nodeName)}}),p.support.focusinBubbles||p.each({focus:"focusin",blur:"focusout"},function(a,b){var c=0,d=function(a){p.event.simulate(b,a.target,p.event.fix(a),!0)};p.event.special[b]={setup:function(){c++===0&&e.addEventListener(a,d,!0)},teardown:function(){--c===0&&e.removeEventListener(a,d,!0)}}}),p.fn.extend({on:function(a,c,d,e,f){var g,h;if(typeof a=="object"){typeof c!="string"&&(d=d||c,c=b);for(h in a)this.on(h,c,d,a[h],f);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=ba;else if(!e)return this;return f===1&&(g=e,e=function(a){return p().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=p.guid++)),this.each(function(){p.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,c,d){var e,f;if(a&&a.preventDefault&&a.handleObj)return e=a.handleObj,p(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler),this;if(typeof a=="object"){for(f in a)this.off(f,c,a[f]);return this}if(c===!1||typeof c=="function")d=c,c=b;return d===!1&&(d=ba),this.each(function(){p.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){return p(this.context).on(a,this.selector,b,c),this},die:function(a,b){return p(this.context).off(a,this.selector||"**",b),this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length===1?this.off(a,"**"):this.off(b,a||"**",c)},trigger:function(a,b){return this.each(function(){p.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return p.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||p.guid++,d=0,e=function(c){var e=(p._data(this,"lastToggle"+a.guid)||0)%d;return p._data(this,"lastToggle"+a.guid,e+1),c.preventDefault(),b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),p.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){p.fn[b]=function(a,c){return c==null&&(c=a,a=null),arguments.length>0?this.on(b,null,a,c):this.trigger(b)},Y.test(b)&&(p.event.fixHooks[b]=p.event.keyHooks),Z.test(b)&&(p.event.fixHooks[b]=p.event.mouseHooks)}),function(a,b){function bc(a,b,c,d){c=c||[],b=b||r;var e,f,i,j,k=b.nodeType;if(!a||typeof a!="string")return c;if(k!==1&&k!==9)return[];i=g(b);if(!i&&!d)if(e=P.exec(a))if(j=e[1]){if(k===9){f=b.getElementById(j);if(!f||!f.parentNode)return c;if(f.id===j)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(j))&&h(b,f)&&f.id===j)return c.push(f),c}else{if(e[2])return w.apply(c,x.call(b.getElementsByTagName(a),0)),c;if((j=e[3])&&_&&b.getElementsByClassName)return w.apply(c,x.call(b.getElementsByClassName(j),0)),c}return bp(a.replace(L,"$1"),b,c,d,i)}function bd(a){return function(b){var c=b.nodeName.toLowerCase();return c==="input"&&b.type===a}}function be(a){return function(b){var c=b.nodeName.toLowerCase();return(c==="input"||c==="button")&&b.type===a}}function bf(a){return z(function(b){return b=+b,z(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function bg(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}function bh(a,b){var c,d,f,g,h,i,j,k=C[o][a];if(k)return b?0:k.slice(0);h=a,i=[],j=e.preFilter;while(h){if(!c||(d=M.exec(h)))d&&(h=h.slice(d[0].length)),i.push(f=[]);c=!1;if(d=N.exec(h))f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=d[0].replace(L," ");for(g in e.filter)(d=W[g].exec(h))&&(!j[g]||(d=j[g](d,r,!0)))&&(f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=g,c.matches=d);if(!c)break}return b?h.length:h?bc.error(a):C(a,i).slice(0)}function bi(a,b,d){var e=b.dir,f=d&&b.dir==="parentNode",g=u++;return b.first?function(b,c,d){while(b=b[e])if(f||b.nodeType===1)return a(b,c,d)}:function(b,d,h){if(!h){var i,j=t+" "+g+" ",k=j+c;while(b=b[e])if(f||b.nodeType===1){if((i=b[o])===k)return b.sizset;if(typeof i=="string"&&i.indexOf(j)===0){if(b.sizset)return b}else{b[o]=k;if(a(b,d,h))return b.sizset=!0,b;b.sizset=!1}}}else while(b=b[e])if(f||b.nodeType===1)if(a(b,d,h))return b}}function bj(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function bk(a,b,c,d,e){var f,g=[],h=0,i=a.length,j=b!=null;for(;h<i;h++)if(f=a[h])if(!c||c(f,d,e))g.push(f),j&&b.push(h);return g}function bl(a,b,c,d,e,f){return d&&!d[o]&&(d=bl(d)),e&&!e[o]&&(e=bl(e,f)),z(function(f,g,h,i){if(f&&e)return;var j,k,l,m=[],n=[],o=g.length,p=f||bo(b||"*",h.nodeType?[h]:h,[],f),q=a&&(f||!b)?bk(p,m,a,h,i):p,r=c?e||(f?a:o||d)?[]:g:q;c&&c(q,r,h,i);if(d){l=bk(r,n),d(l,[],h,i),j=l.length;while(j--)if(k=l[j])r[n[j]]=!(q[n[j]]=k)}if(f){j=a&&r.length;while(j--)if(k=r[j])f[m[j]]=!(g[m[j]]=k)}else r=bk(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):w.apply(g,r)})}function bm(a){var b,c,d,f=a.length,g=e.relative[a[0].type],h=g||e.relative[" "],i=g?1:0,j=bi(function(a){return a===b},h,!0),k=bi(function(a){return y.call(b,a)>-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==l)||((b=c).nodeType?j(a,c,d):k(a,c,d))}];for(;i<f;i++)if(c=e.relative[a[i].type])m=[bi(bj(m),c)];else{c=e.filter[a[i].type].apply(null,a[i].matches);if(c[o]){d=++i;for(;d<f;d++)if(e.relative[a[d].type])break;return bl(i>1&&bj(m),i>1&&a.slice(0,i-1).join("").replace(L,"$1"),c,i<d&&bm(a.slice(i,d)),d<f&&bm(a=a.slice(d)),d<f&&a.join(""))}m.push(c)}return bj(m)}function bn(a,b){var d=b.length>0,f=a.length>0,g=function(h,i,j,k,m){var n,o,p,q=[],s=0,u="0",x=h&&[],y=m!=null,z=l,A=h||f&&e.find.TAG("*",m&&i.parentNode||i),B=t+=z==null?1:Math.E;y&&(l=i!==r&&i,c=g.el);for(;(n=A[u])!=null;u++){if(f&&n){for(o=0;p=a[o];o++)if(p(n,i,j)){k.push(n);break}y&&(t=B,c=++g.el)}d&&((n=!p&&n)&&s--,h&&x.push(n))}s+=u;if(d&&u!==s){for(o=0;p=b[o];o++)p(x,q,i,j);if(h){if(s>0)while(u--)!x[u]&&!q[u]&&(q[u]=v.call(k));q=bk(q)}w.apply(k,q),y&&!h&&q.length>0&&s+b.length>1&&bc.uniqueSort(k)}return y&&(t=B,l=z),x};return g.el=0,d?z(g):g}function bo(a,b,c,d){var e=0,f=b.length;for(;e<f;e++)bc(a,b[e],c,d);return c}function bp(a,b,c,d,f){var g,h,j,k,l,m=bh(a),n=m.length;if(!d&&m.length===1){h=m[0]=m[0].slice(0);if(h.length>2&&(j=h[0]).type==="ID"&&b.nodeType===9&&!f&&e.relative[h[1].type]){b=e.find.ID(j.matches[0].replace(V,""),b,f)[0];if(!b)return c;a=a.slice(h.shift().length)}for(g=W.POS.test(a)?-1:h.length-1;g>=0;g--){j=h[g];if(e.relative[k=j.type])break;if(l=e.find[k])if(d=l(j.matches[0].replace(V,""),R.test(h[0].type)&&b.parentNode||b,f)){h.splice(g,1),a=d.length&&h.join("");if(!a)return w.apply(c,x.call(d,0)),c;break}}}return i(a,m)(d,b,f,c,R.test(a)),c}function bq(){}var c,d,e,f,g,h,i,j,k,l,m=!0,n="undefined",o=("sizcache"+Math.random()).replace(".",""),q=String,r=a.document,s=r.documentElement,t=0,u=0,v=[].pop,w=[].push,x=[].slice,y=[].indexOf||function(a){var b=0,c=this.length;for(;b<c;b++)if(this[b]===a)return b;return-1},z=function(a,b){return a[o]=b==null||b,a},A=function(){var a={},b=[];return z(function(c,d){return b.push(c)>e.cacheLength&&delete a[b.shift()],a[c]=d},a)},B=A(),C=A(),D=A(),E="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",G=F.replace("w","w#"),H="([*^$|!~]?=)",I="\\["+E+"*("+F+")"+E+"*(?:"+H+E+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+G+")|)|)"+E+"*\\]",J=":("+F+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+I+")|[^:]|\\\\.)*|.*))\\)|)",K=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+E+"*((?:-\\d)?\\d*)"+E+"*\\)|)(?=[^-]|$)",L=new RegExp("^"+E+"+|((?:^|[^\\\\])(?:\\\\.)*)"+E+"+$","g"),M=new RegExp("^"+E+"*,"+E+"*"),N=new RegExp("^"+E+"*([\\x20\\t\\r\\n\\f>+~])"+E+"*"),O=new RegExp(J),P=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,Q=/^:not/,R=/[\x20\t\r\n\f]*[+~]/,S=/:not\($/,T=/h\d/i,U=/input|select|textarea|button/i,V=/\\(?!\\)/g,W={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),NAME:new RegExp("^\\[name=['\"]?("+F+")['\"]?\\]"),TAG:new RegExp("^("+F.replace("w","w*")+")"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+J),POS:new RegExp(K,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+E+"*(even|odd|(([+-]|)(\\d*)n|)"+E+"*(?:([+-]|)"+E+"*(\\d+)|))"+E+"*\\)|)","i"),needsContext:new RegExp("^"+E+"*[>+~]|"+K,"i")},X=function(a){var b=r.createElement("div");try{return a(b)}catch(c){return!1}finally{b=null}},Y=X(function(a){return a.appendChild(r.createComment("")),!a.getElementsByTagName("*").length}),Z=X(function(a){return a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!==n&&a.firstChild.getAttribute("href")==="#"}),$=X(function(a){a.innerHTML="<select></select>";var b=typeof a.lastChild.getAttribute("multiple");return b!=="boolean"&&b!=="string"}),_=X(function(a){return a.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",!a.getElementsByClassName||!a.getElementsByClassName("e").length?!1:(a.lastChild.className="e",a.getElementsByClassName("e").length===2)}),ba=X(function(a){a.id=o+0,a.innerHTML="<a name='"+o+"'></a><div name='"+o+"'></div>",s.insertBefore(a,s.firstChild);var b=r.getElementsByName&&r.getElementsByName(o).length===2+r.getElementsByName(o+0).length;return d=!r.getElementById(o),s.removeChild(a),b});try{x.call(s.childNodes,0)[0].nodeType}catch(bb){x=function(a){var b,c=[];for(;b=this[a];a++)c.push(b);return c}}bc.matches=function(a,b){return bc(a,null,null,b)},bc.matchesSelector=function(a,b){return bc(b,null,null,[a]).length>0},f=bc.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(e===1||e===9||e===11){if(typeof a.textContent=="string")return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=f(a)}else if(e===3||e===4)return a.nodeValue}else for(;b=a[d];d++)c+=f(b);return c},g=bc.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?b.nodeName!=="HTML":!1},h=bc.contains=s.contains?function(a,b){var c=a.nodeType===9?a.documentElement:a,d=b&&b.parentNode;return a===d||!!(d&&d.nodeType===1&&c.contains&&c.contains(d))}:s.compareDocumentPosition?function(a,b){return b&&!!(a.compareDocumentPosition(b)&16)}:function(a,b){while(b=b.parentNode)if(b===a)return!0;return!1},bc.attr=function(a,b){var c,d=g(a);return d||(b=b.toLowerCase()),(c=e.attrHandle[b])?c(a):d||$?a.getAttribute(b):(c=a.getAttributeNode(b),c?typeof a[b]=="boolean"?a[b]?b:null:c.specified?c.value:null:null)},e=bc.selectors={cacheLength:50,createPseudo:z,match:W,attrHandle:Z?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},find:{ID:d?function(a,b,c){if(typeof b.getElementById!==n&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==n&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==n&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:Y?function(a,b){if(typeof b.getElementsByTagName!==n)return b.getElementsByTagName(a)}:function(a,b){var c=b.getElementsByTagName(a);if(a==="*"){var d,e=[],f=0;for(;d=c[f];f++)d.nodeType===1&&e.push(d);return e}return c},NAME:ba&&function(a,b){if(typeof b.getElementsByName!==n)return b.getElementsByName(name)},CLASS:_&&function(a,b,c){if(typeof b.getElementsByClassName!==n&&!c)return b.getElementsByClassName(a)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(V,""),a[3]=(a[4]||a[5]||"").replace(V,""),a[2]==="~="&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),a[1]==="nth"?(a[2]||bc.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*(a[2]==="even"||a[2]==="odd")),a[4]=+(a[6]+a[7]||a[2]==="odd")):a[2]&&bc.error(a[0]),a},PSEUDO:function(a){var b,c;if(W.CHILD.test(a[0]))return null;if(a[3])a[2]=a[3];else if(b=a[4])O.test(b)&&(c=bh(b,!0))&&(c=b.indexOf(")",b.length-c)-b.length)&&(b=b.slice(0,c),a[0]=a[0].slice(0,c)),a[2]=b;return a.slice(0,3)}},filter:{ID:d?function(a){return a=a.replace(V,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(V,""),function(b){var c=typeof b.getAttributeNode!==n&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return a==="*"?function(){return!0}:(a=a.replace(V,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=B[o][a];return b||(b=B(a,new RegExp("(^|"+E+")"+a+"("+E+"|$)"))),function(a){return b.test(a.className||typeof a.getAttribute!==n&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return function(d,e){var f=bc.attr(d,a);return f==null?b==="!=":b?(f+="",b==="="?f===c:b==="!="?f!==c:b==="^="?c&&f.indexOf(c)===0:b==="*="?c&&f.indexOf(c)>-1:b==="$="?c&&f.substr(f.length-c.length)===c:b==="~="?(" "+f+" ").indexOf(c)>-1:b==="|="?f===c||f.substr(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d){return a==="nth"?function(a){var b,e,f=a.parentNode;if(c===1&&d===0)return!0;if(f){e=0;for(b=f.firstChild;b;b=b.nextSibling)if(b.nodeType===1){e++;if(a===b)break}}return e-=d,e===c||e%c===0&&e/c>=0}:function(b){var c=b;switch(a){case"only":case"first":while(c=c.previousSibling)if(c.nodeType===1)return!1;if(a==="first")return!0;c=b;case"last":while(c=c.nextSibling)if(c.nodeType===1)return!1;return!0}}},PSEUDO:function(a,b){var c,d=e.pseudos[a]||e.setFilters[a.toLowerCase()]||bc.error("unsupported pseudo: "+a);return d[o]?d(b):d.length>1?(c=[a,a,"",b],e.setFilters.hasOwnProperty(a.toLowerCase())?z(function(a,c){var e,f=d(a,b),g=f.length;while(g--)e=y.call(a,f[g]),a[e]=!(c[e]=f[g])}):function(a){return d(a,0,c)}):d}},pseudos:{not:z(function(a){var b=[],c=[],d=i(a.replace(L,"$1"));return d[o]?z(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)if(f=g[h])a[h]=!(b[h]=f)}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:z(function(a){return function(b){return bc(a,b).length>0}}),contains:z(function(a){return function(b){return(b.textContent||b.innerText||f(b)).indexOf(a)>-1}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&!!a.checked||b==="option"&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!e.pseudos.empty(a)},empty:function(a){var b;a=a.firstChild;while(a){if(a.nodeName>"@"||(b=a.nodeType)===3||b===4)return!1;a=a.nextSibling}return!0},header:function(a){return T.test(a.nodeName)},text:function(a){var b,c;return a.nodeName.toLowerCase()==="input"&&(b=a.type)==="text"&&((c=a.getAttribute("type"))==null||c.toLowerCase()===b)},radio:bd("radio"),checkbox:bd("checkbox"),file:bd("file"),password:bd("password"),image:bd("image"),submit:be("submit"),reset:be("reset"),button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&a.type==="button"||b==="button"},input:function(a){return U.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return a===b.activeElement&&(!b.hasFocus||b.hasFocus())&&(!!a.type||!!a.href)},active:function(a){return a===a.ownerDocument.activeElement},first:bf(function(a,b,c){return[0]}),last:bf(function(a,b,c){return[b-1]}),eq:bf(function(a,b,c){return[c<0?c+b:c]}),even:bf(function(a,b,c){for(var d=0;d<b;d+=2)a.push(d);return a}),odd:bf(function(a,b,c){for(var d=1;d<b;d+=2)a.push(d);return a}),lt:bf(function(a,b,c){for(var d=c<0?c+b:c;--d>=0;)a.push(d);return a}),gt:bf(function(a,b,c){for(var d=c<0?c+b:c;++d<b;)a.push(d);return a})}},j=s.compareDocumentPosition?function(a,b){return a===b?(k=!0,0):(!a.compareDocumentPosition||!b.compareDocumentPosition?a.compareDocumentPosition:a.compareDocumentPosition(b)&4)?-1:1}:function(a,b){if(a===b)return k=!0,0;if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,h=b.parentNode,i=g;if(g===h)return bg(a,b);if(!g)return-1;if(!h)return 1;while(i)e.unshift(i),i=i.parentNode;i=h;while(i)f.unshift(i),i=i.parentNode;c=e.length,d=f.length;for(var j=0;j<c&&j<d;j++)if(e[j]!==f[j])return bg(e[j],f[j]);return j===c?bg(a,f[j],-1):bg(e[j],b,1)},[0,0].sort(j),m=!k,bc.uniqueSort=function(a){var b,c=1;k=m,a.sort(j);if(k)for(;b=a[c];c++)b===a[c-1]&&a.splice(c--,1);return a},bc.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},i=bc.compile=function(a,b){var c,d=[],e=[],f=D[o][a];if(!f){b||(b=bh(a)),c=b.length;while(c--)f=bm(b[c]),f[o]?d.push(f):e.push(f);f=D(a,bn(e,d))}return f},r.querySelectorAll&&function(){var a,b=bp,c=/'|\\/g,d=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,e=[":focus"],f=[":active",":focus"],h=s.matchesSelector||s.mozMatchesSelector||s.webkitMatchesSelector||s.oMatchesSelector||s.msMatchesSelector;X(function(a){a.innerHTML="<select><option selected=''></option></select>",a.querySelectorAll("[selected]").length||e.push("\\["+E+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),X(function(a){a.innerHTML="<p test=''></p>",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+E+"*(?:\"\"|'')"),a.innerHTML="<input type='hidden'/>",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=new RegExp(e.join("|")),bp=function(a,d,f,g,h){if(!g&&!h&&(!e||!e.test(a))){var i,j,k=!0,l=o,m=d,n=d.nodeType===9&&a;if(d.nodeType===1&&d.nodeName.toLowerCase()!=="object"){i=bh(a),(k=d.getAttribute("id"))?l=k.replace(c,"\\$&"):d.setAttribute("id",l),l="[id='"+l+"'] ",j=i.length;while(j--)i[j]=l+i[j].join("");m=R.test(a)&&d.parentNode||d,n=i.join(",")}if(n)try{return w.apply(f,x.call(m.querySelectorAll(n),0)),f}catch(p){}finally{k||d.removeAttribute("id")}}return b(a,d,f,g,h)},h&&(X(function(b){a=h.call(b,"div");try{h.call(b,"[test!='']:sizzle"),f.push("!=",J)}catch(c){}}),f=new RegExp(f.join("|")),bc.matchesSelector=function(b,c){c=c.replace(d,"='$1']");if(!g(b)&&!f.test(c)&&(!e||!e.test(c)))try{var i=h.call(b,c);if(i||a||b.document&&b.document.nodeType!==11)return i}catch(j){}return bc(c,null,null,[b]).length>0})}(),e.pseudos.nth=e.pseudos.eq,e.filters=bq.prototype=e.pseudos,e.setFilters=new bq,bc.attr=p.attr,p.find=bc,p.expr=bc.selectors,p.expr[":"]=p.expr.pseudos,p.unique=bc.uniqueSort,p.text=bc.getText,p.isXMLDoc=bc.isXML,p.contains=bc.contains}(a);var bc=/Until$/,bd=/^(?:parents|prev(?:Until|All))/,be=/^.[^:#\[\.,]*$/,bf=p.expr.match.needsContext,bg={children:!0,contents:!0,next:!0,prev:!0};p.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if(typeof a!="string")return p(a).filter(function(){for(b=0,c=h.length;b<c;b++)if(p.contains(h[b],this))return!0});g=this.pushStack("","find",a);for(b=0,c=this.length;b<c;b++){d=g.length,p.find(a,this[b],g);if(b>0)for(e=d;e<g.length;e++)for(f=0;f<d;f++)if(g[f]===g[e]){g.splice(e--,1);break}}return g},has:function(a){var b,c=p(a,this),d=c.length;return this.filter(function(){for(b=0;b<d;b++)if(p.contains(this,c[b]))return!0})},not:function(a){return this.pushStack(bj(this,a,!1),"not",a)},filter:function(a){return this.pushStack(bj(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?bf.test(a)?p(a,this.context).index(this[0])>=0:p.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c,d=0,e=this.length,f=[],g=bf.test(a)||typeof a!="string"?p(a,b||this.context):0;for(;d<e;d++){c=this[d];while(c&&c.ownerDocument&&c!==b&&c.nodeType!==11){if(g?g.index(c)>-1:p.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}}return f=f.length>1?p.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?typeof a=="string"?p.inArray(this[0],p(a)):p.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c=typeof a=="string"?p(a,b):p.makeArray(a&&a.nodeType?[a]:a),d=p.merge(this.get(),c);return this.pushStack(bh(c[0])||bh(d[0])?d:p.unique(d))},addBack:function(a){return this.add(a==null?this.prevObject:this.prevObject.filter(a))}}),p.fn.andSelf=p.fn.addBack,p.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return p.dir(a,"parentNode")},parentsUntil:function(a,b,c){return p.dir(a,"parentNode",c)},next:function(a){return bi(a,"nextSibling")},prev:function(a){return bi(a,"previousSibling")},nextAll:function(a){return p.dir(a,"nextSibling")},prevAll:function(a){return p.dir(a,"previousSibling")},nextUntil:function(a,b,c){return p.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return p.dir(a,"previousSibling",c)},siblings:function(a){return p.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return p.sibling(a.firstChild)},contents:function(a){return p.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:p.merge([],a.childNodes)}},function(a,b){p.fn[a]=function(c,d){var e=p.map(this,b,c);return bc.test(a)||(d=c),d&&typeof d=="string"&&(e=p.filter(d,e)),e=this.length>1&&!bg[a]?p.unique(e):e,this.length>1&&bd.test(a)&&(e=e.reverse()),this.pushStack(e,a,k.call(arguments).join(","))}}),p.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),b.length===1?p.find.matchesSelector(b[0],a)?[b[0]]:[]:p.find.matches(a,b)},dir:function(a,c,d){var e=[],f=a[c];while(f&&f.nodeType!==9&&(d===b||f.nodeType!==1||!p(f).is(d)))f.nodeType===1&&e.push(f),f=f[c];return e},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var bl="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",bm=/ jQuery\d+="(?:null|\d+)"/g,bn=/^\s+/,bo=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bp=/<([\w:]+)/,bq=/<tbody/i,br=/<|&#?\w+;/,bs=/<(?:script|style|link)/i,bt=/<(?:script|object|embed|option|style)/i,bu=new RegExp("<(?:"+bl+")[\\s/>]","i"),bv=/^(?:checkbox|radio)$/,bw=/checked\s*(?:[^=]|=\s*.checked.)/i,bx=/\/(java|ecma)script/i,by=/^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,bz={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bA=bk(e),bB=bA.appendChild(e.createElement("div"));bz.optgroup=bz.option,bz.tbody=bz.tfoot=bz.colgroup=bz.caption=bz.thead,bz.th=bz.td,p.support.htmlSerialize||(bz._default=[1,"X<div>","</div>"]),p.fn.extend({text:function(a){return p.access(this,function(a){return a===b?p.text(this):this.empty().append((this[0]&&this[0].ownerDocument||e).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(p.isFunction(a))return this.each(function(b){p(this).wrapAll(a.call(this,b))});if(this[0]){var b=p(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return p.isFunction(a)?this.each(function(b){p(this).wrapInner(a.call(this,b))}):this.each(function(){var b=p(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=p.isFunction(a);return this.each(function(c){p(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){p.nodeName(this,"body")||p(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(a,this),"before",this.selector)}},after:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(this,a),"after",this.selector)}},remove:function(a,b){var c,d=0;for(;(c=this[d])!=null;d++)if(!a||p.filter(a,[c]).length)!b&&c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),p.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c);return this},empty:function(){var a,b=0;for(;(a=this[b])!=null;b++){a.nodeType===1&&p.cleanData(a.getElementsByTagName("*"));while(a.firstChild)a.removeChild(a.firstChild)}return this},clone:function(a,b){return a=a==null?!1:a,b=b==null?a:b,this.map(function(){return p.clone(this,a,b)})},html:function(a){return p.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(bm,""):b;if(typeof a=="string"&&!bs.test(a)&&(p.support.htmlSerialize||!bu.test(a))&&(p.support.leadingWhitespace||!bn.test(a))&&!bz[(bp.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(bo,"<$1></$2>");try{for(;d<e;d++)c=this[d]||{},c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(f){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return bh(this[0])?this.length?this.pushStack(p(p.isFunction(a)?a():a),"replaceWith",a):this:p.isFunction(a)?this.each(function(b){var c=p(this),d=c.html();c.replaceWith(a.call(this,b,d))}):(typeof a!="string"&&(a=p(a).detach()),this.each(function(){var b=this.nextSibling,c=this.parentNode;p(this).remove(),b?p(b).before(a):p(c).append(a)}))},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){a=[].concat.apply([],a);var e,f,g,h,i=0,j=a[0],k=[],l=this.length;if(!p.support.checkClone&&l>1&&typeof j=="string"&&bw.test(j))return this.each(function(){p(this).domManip(a,c,d)});if(p.isFunction(j))return this.each(function(e){var f=p(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){e=p.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,g.childNodes.length===1&&(g=f);if(f){c=c&&p.nodeName(f,"tr");for(h=e.cacheable||l-1;i<l;i++)d.call(c&&p.nodeName(this[i],"table")?bC(this[i],"tbody"):this[i],i===h?g:p.clone(g,!0,!0))}g=f=null,k.length&&p.each(k,function(a,b){b.src?p.ajax?p.ajax({url:b.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):p.error("no ajax"):p.globalEval((b.text||b.textContent||b.innerHTML||"").replace(by,"")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),p.buildFragment=function(a,c,d){var f,g,h,i=a[0];return c=c||e,c=!c.nodeType&&c[0]||c,c=c.ownerDocument||c,a.length===1&&typeof i=="string"&&i.length<512&&c===e&&i.charAt(0)==="<"&&!bt.test(i)&&(p.support.checkClone||!bw.test(i))&&(p.support.html5Clone||!bu.test(i))&&(g=!0,f=p.fragments[i],h=f!==b),f||(f=c.createDocumentFragment(),p.clean(a,c,f,d),g&&(p.fragments[i]=h&&f)),{fragment:f,cacheable:g}},p.fragments={},p.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){p.fn[a]=function(c){var d,e=0,f=[],g=p(c),h=g.length,i=this.length===1&&this[0].parentNode;if((i==null||i&&i.nodeType===11&&i.childNodes.length===1)&&h===1)return g[b](this[0]),this;for(;e<h;e++)d=(e>0?this.clone(!0):this).get(),p(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),p.extend({clone:function(a,b,c){var d,e,f,g;p.support.html5Clone||p.isXMLDoc(a)||!bu.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bB.innerHTML=a.outerHTML,bB.removeChild(g=bB.firstChild));if((!p.support.noCloneEvent||!p.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!p.isXMLDoc(a)){bE(a,g),d=bF(a),e=bF(g);for(f=0;d[f];++f)e[f]&&bE(d[f],e[f])}if(b){bD(a,g);if(c){d=bF(a),e=bF(g);for(f=0;d[f];++f)bD(d[f],e[f])}}return d=e=null,g},clean:function(a,b,c,d){var f,g,h,i,j,k,l,m,n,o,q,r,s=b===e&&bA,t=[];if(!b||typeof b.createDocumentFragment=="undefined")b=e;for(f=0;(h=a[f])!=null;f++){typeof h=="number"&&(h+="");if(!h)continue;if(typeof h=="string")if(!br.test(h))h=b.createTextNode(h);else{s=s||bk(b),l=b.createElement("div"),s.appendChild(l),h=h.replace(bo,"<$1></$2>"),i=(bp.exec(h)||["",""])[1].toLowerCase(),j=bz[i]||bz._default,k=j[0],l.innerHTML=j[1]+h+j[2];while(k--)l=l.lastChild;if(!p.support.tbody){m=bq.test(h),n=i==="table"&&!m?l.firstChild&&l.firstChild.childNodes:j[1]==="<table>"&&!m?l.childNodes:[];for(g=n.length-1;g>=0;--g)p.nodeName(n[g],"tbody")&&!n[g].childNodes.length&&n[g].parentNode.removeChild(n[g])}!p.support.leadingWhitespace&&bn.test(h)&&l.insertBefore(b.createTextNode(bn.exec(h)[0]),l.firstChild),h=l.childNodes,l.parentNode.removeChild(l)}h.nodeType?t.push(h):p.merge(t,h)}l&&(h=l=s=null);if(!p.support.appendChecked)for(f=0;(h=t[f])!=null;f++)p.nodeName(h,"input")?bG(h):typeof h.getElementsByTagName!="undefined"&&p.grep(h.getElementsByTagName("input"),bG);if(c){q=function(a){if(!a.type||bx.test(a.type))return d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a)};for(f=0;(h=t[f])!=null;f++)if(!p.nodeName(h,"script")||!q(h))c.appendChild(h),typeof h.getElementsByTagName!="undefined"&&(r=p.grep(p.merge([],h.getElementsByTagName("script")),q),t.splice.apply(t,[f+1,0].concat(r)),f+=r.length)}return t},cleanData:function(a,b){var c,d,e,f,g=0,h=p.expando,i=p.cache,j=p.support.deleteExpando,k=p.event.special;for(;(e=a[g])!=null;g++)if(b||p.acceptData(e)){d=e[h],c=d&&i[d];if(c){if(c.events)for(f in c.events)k[f]?p.event.remove(e,f):p.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,p.deletedIds.push(d))}}}}),function(){var a,b;p.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=p.uaMatch(g.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.chrome?b.webkit=!0:b.webkit&&(b.safari=!0),p.browser=b,p.sub=function(){function a(b,c){return new a.fn.init(b,c)}p.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof p&&!(d instanceof a)&&(d=a(d)),p.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(e);return a}}();var bH,bI,bJ,bK=/alpha\([^)]*\)/i,bL=/opacity=([^)]*)/,bM=/^(top|right|bottom|left)$/,bN=/^(none|table(?!-c[ea]).+)/,bO=/^margin/,bP=new RegExp("^("+q+")(.*)$","i"),bQ=new RegExp("^("+q+")(?!px)[a-z%]+$","i"),bR=new RegExp("^([-+])=("+q+")","i"),bS={},bT={position:"absolute",visibility:"hidden",display:"block"},bU={letterSpacing:0,fontWeight:400},bV=["Top","Right","Bottom","Left"],bW=["Webkit","O","Moz","ms"],bX=p.fn.toggle;p.fn.extend({css:function(a,c){return p.access(this,function(a,c,d){return d!==b?p.style(a,c,d):p.css(a,c)},a,c,arguments.length>1)},show:function(){return b$(this,!0)},hide:function(){return b$(this)},toggle:function(a,b){var c=typeof a=="boolean";return p.isFunction(a)&&p.isFunction(b)?bX.apply(this,arguments):this.each(function(){(c?a:bZ(this))?p(this).show():p(this).hide()})}}),p.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bH(a,"opacity");return c===""?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":p.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!a||a.nodeType===3||a.nodeType===8||!a.style)return;var f,g,h,i=p.camelCase(c),j=a.style;c=p.cssProps[i]||(p.cssProps[i]=bY(j,i)),h=p.cssHooks[c]||p.cssHooks[i];if(d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];g=typeof d,g==="string"&&(f=bR.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(p.css(a,c)),g="number");if(d==null||g==="number"&&isNaN(d))return;g==="number"&&!p.cssNumber[i]&&(d+="px");if(!h||!("set"in h)||(d=h.set(a,d,e))!==b)try{j[c]=d}catch(k){}},css:function(a,c,d,e){var f,g,h,i=p.camelCase(c);return c=p.cssProps[i]||(p.cssProps[i]=bY(a.style,i)),h=p.cssHooks[c]||p.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=bH(a,c)),f==="normal"&&c in bU&&(f=bU[c]),d||e!==b?(g=parseFloat(f),d||p.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?bH=function(b,c){var d,e,f,g,h=a.getComputedStyle(b,null),i=b.style;return h&&(d=h[c],d===""&&!p.contains(b.ownerDocument,b)&&(d=p.style(b,c)),bQ.test(d)&&bO.test(c)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=d,d=h.width,i.width=e,i.minWidth=f,i.maxWidth=g)),d}:e.documentElement.currentStyle&&(bH=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return e==null&&f&&f[b]&&(e=f[b]),bQ.test(e)&&!bM.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),e===""?"auto":e}),p.each(["height","width"],function(a,b){p.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth===0&&bN.test(bH(a,"display"))?p.swap(a,bT,function(){return cb(a,b,d)}):cb(a,b,d)},set:function(a,c,d){return b_(a,c,d?ca(a,b,d,p.support.boxSizing&&p.css(a,"boxSizing")==="border-box"):0)}}}),p.support.opacity||(p.cssHooks.opacity={get:function(a,b){return bL.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=p.isNumeric(b)?"alpha(opacity="+b*100+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&p.trim(f.replace(bK,""))===""&&c.removeAttribute){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bK.test(f)?f.replace(bK,e):f+" "+e}}),p(function(){p.support.reliableMarginRight||(p.cssHooks.marginRight={get:function(a,b){return p.swap(a,{display:"inline-block"},function(){if(b)return bH(a,"marginRight")})}}),!p.support.pixelPosition&&p.fn.position&&p.each(["top","left"],function(a,b){p.cssHooks[b]={get:function(a,c){if(c){var d=bH(a,b);return bQ.test(d)?p(a).position()[b]+"px":d}}}})}),p.expr&&p.expr.filters&&(p.expr.filters.hidden=function(a){return a.offsetWidth===0&&a.offsetHeight===0||!p.support.reliableHiddenOffsets&&(a.style&&a.style.display||bH(a,"display"))==="none"},p.expr.filters.visible=function(a){return!p.expr.filters.hidden(a)}),p.each({margin:"",padding:"",border:"Width"},function(a,b){p.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bV[d]+b]=e[d]||e[d-2]||e[0];return f}},bO.test(a)||(p.cssHooks[a+b].set=b_)});var cd=/%20/g,ce=/\[\]$/,cf=/\r?\n/g,cg=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ch=/^(?:select|textarea)/i;p.fn.extend({serialize:function(){return p.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?p.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ch.test(this.nodeName)||cg.test(this.type))}).map(function(a,b){var c=p(this).val();return c==null?null:p.isArray(c)?p.map(c,function(a,c){return{name:b.name,value:a.replace(cf,"\r\n")}}):{name:b.name,value:c.replace(cf,"\r\n")}}).get()}}),p.param=function(a,c){var d,e=[],f=function(a,b){b=p.isFunction(b)?b():b==null?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=p.ajaxSettings&&p.ajaxSettings.traditional);if(p.isArray(a)||a.jquery&&!p.isPlainObject(a))p.each(a,function(){f(this.name,this.value)});else for(d in a)ci(d,a[d],c,f);return e.join("&").replace(cd,"+")};var cj,ck,cl=/#.*$/,cm=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,cn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,co=/^(?:GET|HEAD)$/,cp=/^\/\//,cq=/\?/,cr=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,cs=/([?&])_=[^&]*/,ct=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,cu=p.fn.load,cv={},cw={},cx=["*/"]+["*"];try{ck=f.href}catch(cy){ck=e.createElement("a"),ck.href="",ck=ck.href}cj=ct.exec(ck.toLowerCase())||[],p.fn.load=function(a,c,d){if(typeof a!="string"&&cu)return cu.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),p.isFunction(c)?(d=c,c=b):c&&typeof c=="object"&&(f="POST"),p.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?p("<div>").append(a.replace(cr,"")).find(e):a)}),this},p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){p.fn[b]=function(a){return this.on(b,a)}}),p.each(["get","post"],function(a,c){p[c]=function(a,d,e,f){return p.isFunction(d)&&(f=f||e,e=d,d=b),p.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),p.extend({getScript:function(a,c){return p.get(a,b,c,"script")},getJSON:function(a,b,c){return p.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?cB(a,p.ajaxSettings):(b=a,a=p.ajaxSettings),cB(a,b),a},ajaxSettings:{url:ck,isLocal:cn.test(cj[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":cx},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":p.parseJSON,"text xml":p.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:cz(cv),ajaxTransport:cz(cw),ajax:function(a,c){function y(a,c,f,i){var k,s,t,u,w,y=c;if(v===2)return;v=2,h&&clearTimeout(h),g=b,e=i||"",x.readyState=a>0?4:0,f&&(u=cC(l,x,f));if(a>=200&&a<300||a===304)l.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(p.lastModified[d]=w),w=x.getResponseHeader("Etag"),w&&(p.etag[d]=w)),a===304?(y="notmodified",k=!0):(k=cD(l,u),y=k.state,s=k.data,t=k.error,k=!t);else{t=y;if(!y||a)y="error",a<0&&(a=0)}x.status=a,x.statusText=(c||y)+"",k?o.resolveWith(m,[s,y,x]):o.rejectWith(m,[x,y,t]),x.statusCode(r),r=b,j&&n.trigger("ajax"+(k?"Success":"Error"),[x,l,k?s:t]),q.fireWith(m,[x,y]),j&&(n.trigger("ajaxComplete",[x,l]),--p.active||p.event.trigger("ajaxStop"))}typeof a=="object"&&(c=a,a=b),c=c||{};var d,e,f,g,h,i,j,k,l=p.ajaxSetup({},c),m=l.context||l,n=m!==l&&(m.nodeType||m instanceof p)?p(m):p.event,o=p.Deferred(),q=p.Callbacks("once memory"),r=l.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,setRequestHeader:function(a,b){if(!v){var c=a.toLowerCase();a=u[c]=u[c]||a,t[a]=b}return this},getAllResponseHeaders:function(){return v===2?e:null},getResponseHeader:function(a){var c;if(v===2){if(!f){f={};while(c=cm.exec(e))f[c[1].toLowerCase()]=c[2]}c=f[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return v||(l.mimeType=a),this},abort:function(a){return a=a||w,g&&g.abort(a),y(0,a),this}};o.promise(x),x.success=x.done,x.error=x.fail,x.complete=q.add,x.statusCode=function(a){if(a){var b;if(v<2)for(b in a)r[b]=[r[b],a[b]];else b=a[x.status],x.always(b)}return this},l.url=((a||l.url)+"").replace(cl,"").replace(cp,cj[1]+"//"),l.dataTypes=p.trim(l.dataType||"*").toLowerCase().split(s),l.crossDomain==null&&(i=ct.exec(l.url.toLowerCase())||!1,l.crossDomain=i&&i.join(":")+(i[3]?"":i[1]==="http:"?80:443)!==cj.join(":")+(cj[3]?"":cj[1]==="http:"?80:443)),l.data&&l.processData&&typeof l.data!="string"&&(l.data=p.param(l.data,l.traditional)),cA(cv,l,c,x);if(v===2)return x;j=l.global,l.type=l.type.toUpperCase(),l.hasContent=!co.test(l.type),j&&p.active++===0&&p.event.trigger("ajaxStart");if(!l.hasContent){l.data&&(l.url+=(cq.test(l.url)?"&":"?")+l.data,delete l.data),d=l.url;if(l.cache===!1){var z=p.now(),A=l.url.replace(cs,"$1_="+z);l.url=A+(A===l.url?(cq.test(l.url)?"&":"?")+"_="+z:"")}}(l.data&&l.hasContent&&l.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",l.contentType),l.ifModified&&(d=d||l.url,p.lastModified[d]&&x.setRequestHeader("If-Modified-Since",p.lastModified[d]),p.etag[d]&&x.setRequestHeader("If-None-Match",p.etag[d])),x.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+(l.dataTypes[0]!=="*"?", "+cx+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)x.setRequestHeader(k,l.headers[k]);if(!l.beforeSend||l.beforeSend.call(m,x,l)!==!1&&v!==2){w="abort";for(k in{success:1,error:1,complete:1})x[k](l[k]);g=cA(cw,l,c,x);if(!g)y(-1,"No Transport");else{x.readyState=1,j&&n.trigger("ajaxSend",[x,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){x.abort("timeout")},l.timeout));try{v=1,g.send(t,y)}catch(B){if(v<2)y(-1,B);else throw B}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var cE=[],cF=/\?/,cG=/(=)\?(?=&|$)|\?\?/,cH=p.now();p.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=cE.pop()||p.expando+"_"+cH++;return this[a]=!0,a}}),p.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&cG.test(j),m=k&&!l&&typeof i=="string"&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&cG.test(i);if(c.dataTypes[0]==="jsonp"||l||m)return f=c.jsonpCallback=p.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(cG,"$1"+f):m?c.data=i.replace(cG,"$1"+f):k&&(c.url+=(cF.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||p.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,cE.push(f)),h&&p.isFunction(g)&&g(h[0]),h=g=b}),"script"}),p.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return p.globalEval(a),a}}}),p.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),p.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=e.head||e.getElementsByTagName("head")[0]||e.documentElement;return{send:function(f,g){c=e.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){if(e||!c.readyState||/loaded|complete/.test(c.readyState))c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||g(200,"success")},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var cI,cJ=a.ActiveXObject?function(){for(var a in cI)cI[a](0,1)}:!1,cK=0;p.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&cL()||cM()}:cL,function(a){p.extend(p.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(p.ajaxSettings.xhr()),p.support.ajax&&p.ajaxTransport(function(c){if(!c.crossDomain||p.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async);if(c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||i.readyState===4)){d=b,g&&(i.onreadystatechange=p.noop,cJ&&delete cI[g]);if(e)i.readyState!==4&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}!h&&c.isLocal&&!c.crossDomain?h=l.text?200:404:h===1223&&(h=204)}}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?i.readyState===4?setTimeout(d,0):(g=++cK,cJ&&(cI||(cI={},p(a).unload(cJ)),cI[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var cN,cO,cP=/^(?:toggle|show|hide)$/,cQ=new RegExp("^(?:([-+])=|)("+q+")([a-z%]*)$","i"),cR=/queueHooks$/,cS=[cY],cT={"*":[function(a,b){var c,d,e=this.createTween(a,b),f=cQ.exec(b),g=e.cur(),h=+g||0,i=1,j=20;if(f){c=+f[2],d=f[3]||(p.cssNumber[a]?"":"px");if(d!=="px"&&h){h=p.css(e.elem,a,!0)||c||1;do i=i||".5",h=h/i,p.style(e.elem,a,h+d);while(i!==(i=e.cur()/g)&&i!==1&&--j)}e.unit=d,e.start=h,e.end=f[1]?h+(f[1]+1)*c:c}return e}]};p.Animation=p.extend(cW,{tweener:function(a,b){p.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");var c,d=0,e=a.length;for(;d<e;d++)c=a[d],cT[c]=cT[c]||[],cT[c].unshift(b)},prefilter:function(a,b){b?cS.unshift(a):cS.push(a)}}),p.Tween=cZ,cZ.prototype={constructor:cZ,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(p.cssNumber[c]?"":"px")},cur:function(){var a=cZ.propHooks[this.prop];return a&&a.get?a.get(this):cZ.propHooks._default.get(this)},run:function(a){var b,c=cZ.propHooks[this.prop];return this.options.duration?this.pos=b=p.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):cZ.propHooks._default.set(this),this}},cZ.prototype.init.prototype=cZ.prototype,cZ.propHooks={_default:{get:function(a){var b;return a.elem[a.prop]==null||!!a.elem.style&&a.elem.style[a.prop]!=null?(b=p.css(a.elem,a.prop,!1,""),!b||b==="auto"?0:b):a.elem[a.prop]},set:function(a){p.fx.step[a.prop]?p.fx.step[a.prop](a):a.elem.style&&(a.elem.style[p.cssProps[a.prop]]!=null||p.cssHooks[a.prop])?p.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},cZ.propHooks.scrollTop=cZ.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},p.each(["toggle","show","hide"],function(a,b){var c=p.fn[b];p.fn[b]=function(d,e,f){return d==null||typeof d=="boolean"||!a&&p.isFunction(d)&&p.isFunction(e)?c.apply(this,arguments):this.animate(c$(b,!0),d,e,f)}}),p.fn.extend({fadeTo:function(a,b,c,d){return this.filter(bZ).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=p.isEmptyObject(a),f=p.speed(b,c,d),g=function(){var b=cW(this,p.extend({},a),f);e&&b.stop(!0)};return e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,c,d){var e=function(a){var b=a.stop;delete a.stop,b(d)};return typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,c=a!=null&&a+"queueHooks",f=p.timers,g=p._data(this);if(c)g[c]&&g[c].stop&&e(g[c]);else for(c in g)g[c]&&g[c].stop&&cR.test(c)&&e(g[c]);for(c=f.length;c--;)f[c].elem===this&&(a==null||f[c].queue===a)&&(f[c].anim.stop(d),b=!1,f.splice(c,1));(b||!d)&&p.dequeue(this,a)})}}),p.each({slideDown:c$("show"),slideUp:c$("hide"),slideToggle:c$("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){p.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),p.speed=function(a,b,c){var d=a&&typeof a=="object"?p.extend({},a):{complete:c||!c&&b||p.isFunction(a)&&a,duration:a,easing:c&&b||b&&!p.isFunction(b)&&b};d.duration=p.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in p.fx.speeds?p.fx.speeds[d.duration]:p.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";return d.old=d.complete,d.complete=function(){p.isFunction(d.old)&&d.old.call(this),d.queue&&p.dequeue(this,d.queue)},d},p.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},p.timers=[],p.fx=cZ.prototype.init,p.fx.tick=function(){var a,b=p.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||p.fx.stop()},p.fx.timer=function(a){a()&&p.timers.push(a)&&!cO&&(cO=setInterval(p.fx.tick,p.fx.interval))},p.fx.interval=13,p.fx.stop=function(){clearInterval(cO),cO=null},p.fx.speeds={slow:600,fast:200,_default:400},p.fx.step={},p.expr&&p.expr.filters&&(p.expr.filters.animated=function(a){return p.grep(p.timers,function(b){return a===b.elem}).length});var c_=/^(?:body|html)$/i;p.fn.offset=function(a){if(arguments.length)return a===b?this:this.each(function(b){p.offset.setOffset(this,a,b)});var c,d,e,f,g,h,i,j={top:0,left:0},k=this[0],l=k&&k.ownerDocument;if(!l)return;return(d=l.body)===k?p.offset.bodyOffset(k):(c=l.documentElement,p.contains(c,k)?(typeof k.getBoundingClientRect!="undefined"&&(j=k.getBoundingClientRect()),e=da(l),f=c.clientTop||d.clientTop||0,g=c.clientLeft||d.clientLeft||0,h=e.pageYOffset||c.scrollTop,i=e.pageXOffset||c.scrollLeft,{top:j.top+h-f,left:j.left+i-g}):j)},p.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;return p.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(p.css(a,"marginTop"))||0,c+=parseFloat(p.css(a,"marginLeft"))||0),{top:b,left:c}},setOffset:function(a,b,c){var d=p.css(a,"position");d==="static"&&(a.style.position="relative");var e=p(a),f=e.offset(),g=p.css(a,"top"),h=p.css(a,"left"),i=(d==="absolute"||d==="fixed")&&p.inArray("auto",[g,h])>-1,j={},k={},l,m;i?(k=e.position(),l=k.top,m=k.left):(l=parseFloat(g)||0,m=parseFloat(h)||0),p.isFunction(b)&&(b=b.call(a,c,f)),b.top!=null&&(j.top=b.top-f.top+l),b.left!=null&&(j.left=b.left-f.left+m),"using"in b?b.using.call(a,j):e.css(j)}},p.fn.extend({position:function(){if(!this[0])return;var a=this[0],b=this.offsetParent(),c=this.offset(),d=c_.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat(p.css(a,"marginTop"))||0,c.left-=parseFloat(p.css(a,"marginLeft"))||0,d.top+=parseFloat(p.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(p.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||e.body;while(a&&!c_.test(a.nodeName)&&p.css(a,"position")==="static")a=a.offsetParent;return a||e.body})}}),p.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);p.fn[a]=function(e){return p.access(this,function(a,e,f){var g=da(a);if(f===b)return g?c in g?g[c]:g.document.documentElement[e]:a[e];g?g.scrollTo(d?p(g).scrollLeft():f,d?f:p(g).scrollTop()):a[e]=f},a,e,arguments.length,null)}}),p.each({Height:"height",Width:"width"},function(a,c){p.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){p.fn[e]=function(e,f){var g=arguments.length&&(d||typeof e!="boolean"),h=d||(e===!0||f===!0?"margin":"border");return p.access(this,function(c,d,e){var f;return p.isWindow(c)?c.document.documentElement["client"+a]:c.nodeType===9?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?p.css(c,d,e,h):p.style(c,d,e,h)},c,g?e:b,g,null)}})}),a.jQuery=a.$=p,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return p})})(window);
js/bootstrap/jquery-noconflict.js ADDED
@@ -0,0 +1 @@
 
1
+ jQuery.noConflict();
js/bootstrap/jquery.accordion.js ADDED
@@ -0,0 +1,90 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * @name Accordion
3
+ * @descripton This Jquery plugin makes creating accordions pain free
4
+ * @version 1.4
5
+ * @requires Jquery 1.2.6+
6
+ *
7
+ * @author Jan Jarfalk
8
+ * @author-email jan.jarfalk@unwrongest.com
9
+ * @author-website http://www.unwrongest.com
10
+ *
11
+ * @licens MIT License - http://www.opensource.org/licenses/mit-license.php
12
+ */
13
+
14
+ (function(jQuery){
15
+ jQuery.fn.extend({
16
+ accordion: function() {
17
+ return this.each(function() {
18
+
19
+ var jQueryul = jQuery(this),
20
+ elementDataKey = 'accordiated',
21
+ activeClassName = 'active',
22
+ activationEffect = 'slideToggle',
23
+ panelSelector = 'ul, div',
24
+ activationEffectSpeed = 'fast',
25
+ itemSelector = 'li';
26
+
27
+ if(jQueryul.data(elementDataKey))
28
+ return false;
29
+
30
+ jQuery.each(jQueryul.find('ul, li>div'), function(){
31
+ jQuery(this).data(elementDataKey, true);
32
+ jQuery(this).hide();
33
+ });
34
+
35
+ jQuery.each(jQueryul.find('em.open-close'), function(){
36
+ jQuery(this).click(function(e){
37
+ activate(this, activationEffect);
38
+ return void(0);
39
+ });
40
+
41
+ jQuery(this).bind('activate-node', function(){
42
+ jQueryul.find( panelSelector ).not(jQuery(this).parents()).not(jQuery(this).siblings()).slideUp( activationEffectSpeed );
43
+ activate(this,'slideDown');
44
+ });
45
+ });
46
+
47
+ var active = (location.hash)?jQueryul.find('a[href=' + location.hash + ']')[0]:jQueryul.find('li.current a')[0];
48
+
49
+ if(active){
50
+ activate(active, false);
51
+ }
52
+
53
+ function activate(el,effect){
54
+
55
+ jQuery(el).parent( itemSelector ).siblings().removeClass(activeClassName).children( panelSelector ).slideUp( activationEffectSpeed );
56
+
57
+ jQuery(el).siblings( panelSelector )[(effect || activationEffect)](((effect == "show")?activationEffectSpeed:false),function(){
58
+
59
+ if(jQuery(el).siblings( panelSelector ).is(':visible')){
60
+ jQuery(el).parents( itemSelector ).not(jQueryul.parents()).addClass(activeClassName);
61
+ } else {
62
+ jQuery(el).parent( itemSelector ).removeClass(activeClassName);
63
+ }
64
+
65
+ if(effect == 'show'){
66
+ jQuery(el).parents( itemSelector ).not(jQueryul.parents()).addClass(activeClassName);
67
+ }
68
+
69
+ jQuery(el).parents().show();
70
+
71
+ });
72
+
73
+ }
74
+
75
+ });
76
+ }
77
+ });
78
+ })(jQuery);
79
+ jQuery(document).ready(function () {
80
+
81
+ jQuery("ul.accordion li.parent").each(function(){
82
+ jQuery(this).append('<em class="open-close">&nbsp;</em>');
83
+ });
84
+
85
+ jQuery('ul.accordion').accordion();
86
+
87
+ jQuery("ul.accordion li.active").each(function(){
88
+ jQuery(this).children().next("ul").css('display', 'block');
89
+ });
90
+ });
js/bootstrap/jquery.jcarousel.min.js ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * jCarousel - Riding carousels with jQuery
3
+ * http://sorgalla.com/jcarousel/
4
+ *
5
+ * Copyright (c) 2006 Jan Sorgalla (http://sorgalla.com)
6
+ * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
7
+ * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
8
+ *
9
+ * Built on top of the jQuery library
10
+ * http://jquery.com
11
+ *
12
+ * Inspired by the "Carousel Component" by Bill Scott
13
+ * http://billwscott.com/carousel/
14
+ */
15
+
16
+ (function(g){var q={vertical:!1,rtl:!1,start:1,offset:1,size:null,scroll:3,visible:null,animation:"normal",easing:"swing",auto:0,wrap:null,initCallback:null,setupCallback:null,reloadCallback:null,itemLoadCallback:null,itemFirstInCallback:null,itemFirstOutCallback:null,itemLastInCallback:null,itemLastOutCallback:null,itemVisibleInCallback:null,itemVisibleOutCallback:null,animationStepCallback:null,buttonNextHTML:"<div></div>",buttonPrevHTML:"<div></div>",buttonNextEvent:"click",buttonPrevEvent:"click", buttonNextCallback:null,buttonPrevCallback:null,itemFallbackDimension:null},m=!1;g(window).bind("load.jcarousel",function(){m=!0});g.jcarousel=function(a,c){this.options=g.extend({},q,c||{});this.autoStopped=this.locked=!1;this.buttonPrevState=this.buttonNextState=this.buttonPrev=this.buttonNext=this.list=this.clip=this.container=null;if(!c||c.rtl===void 0)this.options.rtl=(g(a).attr("dir")||g("html").attr("dir")||"").toLowerCase()=="rtl";this.wh=!this.options.vertical?"width":"height";this.lt=!this.options.vertical? this.options.rtl?"right":"left":"top";for(var b="",d=a.className.split(" "),f=0;f<d.length;f++)if(d[f].indexOf("jcarousel-skin")!=-1){g(a).removeClass(d[f]);b=d[f];break}a.nodeName.toUpperCase()=="UL"||a.nodeName.toUpperCase()=="OL"?(this.list=g(a),this.clip=this.list.parents(".jcarousel-clip"),this.container=this.list.parents(".jcarousel-container")):(this.container=g(a),this.list=this.container.find("ul,ol").eq(0),this.clip=this.container.find(".jcarousel-clip"));if(this.clip.size()===0)this.clip= this.list.wrap("<div></div>").parent();if(this.container.size()===0)this.container=this.clip.wrap("<div></div>").parent();b!==""&&this.container.parent()[0].className.indexOf("jcarousel-skin")==-1&&this.container.wrap('<div class=" '+b+'"></div>');this.buttonPrev=g(".jcarousel-prev",this.container);if(this.buttonPrev.size()===0&&this.options.buttonPrevHTML!==null)this.buttonPrev=g(this.options.buttonPrevHTML).appendTo(this.container);this.buttonPrev.addClass(this.className("jcarousel-prev"));this.buttonNext= g(".jcarousel-next",this.container);if(this.buttonNext.size()===0&&this.options.buttonNextHTML!==null)this.buttonNext=g(this.options.buttonNextHTML).appendTo(this.container);this.buttonNext.addClass(this.className("jcarousel-next"));this.clip.addClass(this.className("jcarousel-clip")).css({position:"relative"});this.list.addClass(this.className("jcarousel-list")).css({overflow:"hidden",position:"relative",top:0,margin:0,padding:0}).css(this.options.rtl?"right":"left",0);this.container.addClass(this.className("jcarousel-container")).css({position:"relative"}); !this.options.vertical&&this.options.rtl&&this.container.addClass("jcarousel-direction-rtl").attr("dir","rtl");var j=this.options.visible!==null?Math.ceil(this.clipping()/this.options.visible):null,b=this.list.children("li"),e=this;if(b.size()>0){var h=0,i=this.options.offset;b.each(function(){e.format(this,i++);h+=e.dimension(this,j)});this.list.css(this.wh,h+100+"px");if(!c||c.size===void 0)this.options.size=b.size()}this.container.css("display","block");this.buttonNext.css("display","block");this.buttonPrev.css("display", "block");this.funcNext=function(){e.next()};this.funcPrev=function(){e.prev()};this.funcResize=function(){e.resizeTimer&&clearTimeout(e.resizeTimer);e.resizeTimer=setTimeout(function(){e.reload()},100)};this.options.initCallback!==null&&this.options.initCallback(this,"init");!m&&g.browser.safari?(this.buttons(!1,!1),g(window).bind("load.jcarousel",function(){e.setup()})):this.setup()};var f=g.jcarousel;f.fn=f.prototype={jcarousel:"0.2.8"};f.fn.extend=f.extend=g.extend;f.fn.extend({setup:function(){this.prevLast= this.prevFirst=this.last=this.first=null;this.animating=!1;this.tail=this.resizeTimer=this.timer=null;this.inTail=!1;if(!this.locked){this.list.css(this.lt,this.pos(this.options.offset)+"px");var a=this.pos(this.options.start,!0);this.prevFirst=this.prevLast=null;this.animate(a,!1);g(window).unbind("resize.jcarousel",this.funcResize).bind("resize.jcarousel",this.funcResize);this.options.setupCallback!==null&&this.options.setupCallback(this)}},reset:function(){this.list.empty();this.list.css(this.lt, "0px");this.list.css(this.wh,"10px");this.options.initCallback!==null&&this.options.initCallback(this,"reset");this.setup()},reload:function(){this.tail!==null&&this.inTail&&this.list.css(this.lt,f.intval(this.list.css(this.lt))+this.tail);this.tail=null;this.inTail=!1;this.options.reloadCallback!==null&&this.options.reloadCallback(this);if(this.options.visible!==null){var a=this,c=Math.ceil(this.clipping()/this.options.visible),b=0,d=0;this.list.children("li").each(function(f){b+=a.dimension(this, c);f+1<a.first&&(d=b)});this.list.css(this.wh,b+"px");this.list.css(this.lt,-d+"px")}this.scroll(this.first,!1)},lock:function(){this.locked=!0;this.buttons()},unlock:function(){this.locked=!1;this.buttons()},size:function(a){if(a!==void 0)this.options.size=a,this.locked||this.buttons();return this.options.size},has:function(a,c){if(c===void 0||!c)c=a;if(this.options.size!==null&&c>this.options.size)c=this.options.size;for(var b=a;b<=c;b++){var d=this.get(b);if(!d.length||d.hasClass("jcarousel-item-placeholder"))return!1}return!0}, get:function(a){return g(">.jcarousel-item-"+a,this.list)},add:function(a,c){var b=this.get(a),d=0,p=g(c);if(b.length===0)for(var j,e=f.intval(a),b=this.create(a);;){if(j=this.get(--e),e<=0||j.length){e<=0?this.list.prepend(b):j.after(b);break}}else d=this.dimension(b);p.get(0).nodeName.toUpperCase()=="LI"?(b.replaceWith(p),b=p):b.empty().append(c);this.format(b.removeClass(this.className("jcarousel-item-placeholder")),a);p=this.options.visible!==null?Math.ceil(this.clipping()/this.options.visible): null;d=this.dimension(b,p)-d;a>0&&a<this.first&&this.list.css(this.lt,f.intval(this.list.css(this.lt))-d+"px");this.list.css(this.wh,f.intval(this.list.css(this.wh))+d+"px");return b},remove:function(a){var c=this.get(a);if(c.length&&!(a>=this.first&&a<=this.last)){var b=this.dimension(c);a<this.first&&this.list.css(this.lt,f.intval(this.list.css(this.lt))+b+"px");c.remove();this.list.css(this.wh,f.intval(this.list.css(this.wh))-b+"px")}},next:function(){this.tail!==null&&!this.inTail?this.scrollTail(!1): this.scroll((this.options.wrap=="both"||this.options.wrap=="last")&&this.options.size!==null&&this.last==this.options.size?1:this.first+this.options.scroll)},prev:function(){this.tail!==null&&this.inTail?this.scrollTail(!0):this.scroll((this.options.wrap=="both"||this.options.wrap=="first")&&this.options.size!==null&&this.first==1?this.options.size:this.first-this.options.scroll)},scrollTail:function(a){if(!this.locked&&!this.animating&&this.tail){this.pauseAuto();var c=f.intval(this.list.css(this.lt)), c=!a?c-this.tail:c+this.tail;this.inTail=!a;this.prevFirst=this.first;this.prevLast=this.last;this.animate(c)}},scroll:function(a,c){!this.locked&&!this.animating&&(this.pauseAuto(),this.animate(this.pos(a),c))},pos:function(a,c){var b=f.intval(this.list.css(this.lt));if(this.locked||this.animating)return b;this.options.wrap!="circular"&&(a=a<1?1:this.options.size&&a>this.options.size?this.options.size:a);for(var d=this.first>a,g=this.options.wrap!="circular"&&this.first<=1?1:this.first,j=d?this.get(g): this.get(this.last),e=d?g:g-1,h=null,i=0,k=!1,l=0;d?--e>=a:++e<a;){h=this.get(e);k=!h.length;if(h.length===0&&(h=this.create(e).addClass(this.className("jcarousel-item-placeholder")),j[d?"before":"after"](h),this.first!==null&&this.options.wrap=="circular"&&this.options.size!==null&&(e<=0||e>this.options.size)))j=this.get(this.index(e)),j.length&&(h=this.add(e,j.clone(!0)));j=h;l=this.dimension(h);k&&(i+=l);if(this.first!==null&&(this.options.wrap=="circular"||e>=1&&(this.options.size===null||e<= this.options.size)))b=d?b+l:b-l}for(var g=this.clipping(),m=[],o=0,n=0,j=this.get(a-1),e=a;++o;){h=this.get(e);k=!h.length;if(h.length===0){h=this.create(e).addClass(this.className("jcarousel-item-placeholder"));if(j.length===0)this.list.prepend(h);else j[d?"before":"after"](h);if(this.first!==null&&this.options.wrap=="circular"&&this.options.size!==null&&(e<=0||e>this.options.size))j=this.get(this.index(e)),j.length&&(h=this.add(e,j.clone(!0)))}j=h;l=this.dimension(h);if(l===0)throw Error("jCarousel: No width/height set for items. This will cause an infinite loop. Aborting..."); this.options.wrap!="circular"&&this.options.size!==null&&e>this.options.size?m.push(h):k&&(i+=l);n+=l;if(n>=g)break;e++}for(h=0;h<m.length;h++)m[h].remove();i>0&&(this.list.css(this.wh,this.dimension(this.list)+i+"px"),d&&(b-=i,this.list.css(this.lt,f.intval(this.list.css(this.lt))-i+"px")));i=a+o-1;if(this.options.wrap!="circular"&&this.options.size&&i>this.options.size)i=this.options.size;if(e>i){o=0;e=i;for(n=0;++o;){h=this.get(e--);if(!h.length)break;n+=this.dimension(h);if(n>=g)break}}e=i-o+ 1;this.options.wrap!="circular"&&e<1&&(e=1);if(this.inTail&&d)b+=this.tail,this.inTail=!1;this.tail=null;if(this.options.wrap!="circular"&&i==this.options.size&&i-o+1>=1&&(d=f.intval(this.get(i).css(!this.options.vertical?"marginRight":"marginBottom")),n-d>g))this.tail=n-g-d;if(c&&a===this.options.size&&this.tail)b-=this.tail,this.inTail=!0;for(;a-- >e;)b+=this.dimension(this.get(a));this.prevFirst=this.first;this.prevLast=this.last;this.first=e;this.last=i;return b},animate:function(a,c){if(!this.locked&& !this.animating){this.animating=!0;var b=this,d=function(){b.animating=!1;a===0&&b.list.css(b.lt,0);!b.autoStopped&&(b.options.wrap=="circular"||b.options.wrap=="both"||b.options.wrap=="last"||b.options.size===null||b.last<b.options.size||b.last==b.options.size&&b.tail!==null&&!b.inTail)&&b.startAuto();b.buttons();b.notify("onAfterAnimation");if(b.options.wrap=="circular"&&b.options.size!==null)for(var c=b.prevFirst;c<=b.prevLast;c++)c!==null&&!(c>=b.first&&c<=b.last)&&(c<1||c>b.options.size)&&b.remove(c)}; this.notify("onBeforeAnimation");if(!this.options.animation||c===!1)this.list.css(this.lt,a+"px"),d();else{var f=!this.options.vertical?this.options.rtl?{right:a}:{left:a}:{top:a},d={duration:this.options.animation,easing:this.options.easing,complete:d};if(g.isFunction(this.options.animationStepCallback))d.step=this.options.animationStepCallback;this.list.animate(f,d)}}},startAuto:function(a){if(a!==void 0)this.options.auto=a;if(this.options.auto===0)return this.stopAuto();if(this.timer===null){this.autoStopped= !1;var c=this;this.timer=window.setTimeout(function(){c.next()},this.options.auto*1E3)}},stopAuto:function(){this.pauseAuto();this.autoStopped=!0},pauseAuto:function(){if(this.timer!==null)window.clearTimeout(this.timer),this.timer=null},buttons:function(a,c){if(a==null&&(a=!this.locked&&this.options.size!==0&&(this.options.wrap&&this.options.wrap!="first"||this.options.size===null||this.last<this.options.size),!this.locked&&(!this.options.wrap||this.options.wrap=="first")&&this.options.size!==null&& this.last>=this.options.size))a=this.tail!==null&&!this.inTail;if(c==null&&(c=!this.locked&&this.options.size!==0&&(this.options.wrap&&this.options.wrap!="last"||this.first>1),!this.locked&&(!this.options.wrap||this.options.wrap=="last")&&this.options.size!==null&&this.first==1))c=this.tail!==null&&this.inTail;var b=this;this.buttonNext.size()>0?(this.buttonNext.unbind(this.options.buttonNextEvent+".jcarousel",this.funcNext),a&&this.buttonNext.bind(this.options.buttonNextEvent+".jcarousel",this.funcNext), this.buttonNext[a?"removeClass":"addClass"](this.className("jcarousel-next-disabled")).attr("disabled",a?!1:!0),this.options.buttonNextCallback!==null&&this.buttonNext.data("jcarouselstate")!=a&&this.buttonNext.each(function(){b.options.buttonNextCallback(b,this,a)}).data("jcarouselstate",a)):this.options.buttonNextCallback!==null&&this.buttonNextState!=a&&this.options.buttonNextCallback(b,null,a);this.buttonPrev.size()>0?(this.buttonPrev.unbind(this.options.buttonPrevEvent+".jcarousel",this.funcPrev), c&&this.buttonPrev.bind(this.options.buttonPrevEvent+".jcarousel",this.funcPrev),this.buttonPrev[c?"removeClass":"addClass"](this.className("jcarousel-prev-disabled")).attr("disabled",c?!1:!0),this.options.buttonPrevCallback!==null&&this.buttonPrev.data("jcarouselstate")!=c&&this.buttonPrev.each(function(){b.options.buttonPrevCallback(b,this,c)}).data("jcarouselstate",c)):this.options.buttonPrevCallback!==null&&this.buttonPrevState!=c&&this.options.buttonPrevCallback(b,null,c);this.buttonNextState= a;this.buttonPrevState=c},notify:function(a){var c=this.prevFirst===null?"init":this.prevFirst<this.first?"next":"prev";this.callback("itemLoadCallback",a,c);this.prevFirst!==this.first&&(this.callback("itemFirstInCallback",a,c,this.first),this.callback("itemFirstOutCallback",a,c,this.prevFirst));this.prevLast!==this.last&&(this.callback("itemLastInCallback",a,c,this.last),this.callback("itemLastOutCallback",a,c,this.prevLast));this.callback("itemVisibleInCallback",a,c,this.first,this.last,this.prevFirst, this.prevLast);this.callback("itemVisibleOutCallback",a,c,this.prevFirst,this.prevLast,this.first,this.last)},callback:function(a,c,b,d,f,j,e){if(!(this.options[a]==null||typeof this.options[a]!="object"&&c!="onAfterAnimation")){var h=typeof this.options[a]=="object"?this.options[a][c]:this.options[a];if(g.isFunction(h)){var i=this;if(d===void 0)h(i,b,c);else if(f===void 0)this.get(d).each(function(){h(i,this,d,b,c)});else for(var a=function(a){i.get(a).each(function(){h(i,this,a,b,c)})},k=d;k<=f;k++)k!== null&&!(k>=j&&k<=e)&&a(k)}}},create:function(a){return this.format("<li></li>",a)},format:function(a,c){for(var a=g(a),b=a.get(0).className.split(" "),d=0;d<b.length;d++)b[d].indexOf("jcarousel-")!=-1&&a.removeClass(b[d]);a.addClass(this.className("jcarousel-item")).addClass(this.className("jcarousel-item-"+c)).css({"float":this.options.rtl?"right":"left","list-style":"none"}).attr("jcarouselindex",c);return a},className:function(a){return a+" "+a+(!this.options.vertical?"-horizontal":"-vertical")}, dimension:function(a,c){var b=g(a);if(c==null)return!this.options.vertical?b.outerWidth(!0)||f.intval(this.options.itemFallbackDimension):b.outerHeight(!0)||f.intval(this.options.itemFallbackDimension);else{var d=!this.options.vertical?c-f.intval(b.css("marginLeft"))-f.intval(b.css("marginRight")):c-f.intval(b.css("marginTop"))-f.intval(b.css("marginBottom"));g(b).css(this.wh,d+"px");return this.dimension(b)}},clipping:function(){return!this.options.vertical?this.clip[0].offsetWidth-f.intval(this.clip.css("borderLeftWidth"))- f.intval(this.clip.css("borderRightWidth")):this.clip[0].offsetHeight-f.intval(this.clip.css("borderTopWidth"))-f.intval(this.clip.css("borderBottomWidth"))},index:function(a,c){if(c==null)c=this.options.size;return Math.round(((a-1)/c-Math.floor((a-1)/c))*c)+1}});f.extend({defaults:function(a){return g.extend(q,a||{})},intval:function(a){a=parseInt(a,10);return isNaN(a)?0:a},windowLoaded:function(){m=!0}});g.fn.jcarousel=function(a){if(typeof a=="string"){var c=g(this).data("jcarousel"),b=Array.prototype.slice.call(arguments, 1);return c[a].apply(c,b)}else return this.each(function(){var b=g(this).data("jcarousel");b?(a&&g.extend(b.options,a),b.reload()):g(this).data("jcarousel",new f(this,a))})}})(jQuery);
js/bootstrap/jquery.js ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ /*! jQuery v1.7.2 jquery.com | jquery.org/license */
2
+ (function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cu(a){if(!cj[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ck||(ck=c.createElement("iframe"),ck.frameBorder=ck.width=ck.height=0),b.appendChild(ck);if(!cl||!ck.createElement)cl=(ck.contentWindow||ck.contentDocument).document,cl.write((f.support.boxModel?"<!doctype html>":"")+"<html><body>"),cl.close();d=cl.createElement(a),cl.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ck)}cj[a]=e}return cj[a]}function ct(a,b){var c={};f.each(cp.concat.apply([],cp.slice(0,b)),function(){c[this]=a});return c}function cs(){cq=b}function cr(){setTimeout(cs,0);return cq=f.now()}function ci(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ch(){try{return new a.XMLHttpRequest}catch(b){}}function cb(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function ca(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function b_(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bD.test(a)?d(a,e):b_(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&f.type(b)==="object")for(var e in b)b_(a+"["+e+"]",b[e],c,d);else d(a,b)}function b$(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function bZ(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bS,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bZ(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bZ(a,c,d,e,"*",g));return l}function bY(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bO),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bB(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?1:0,g=4;if(d>0){if(c!=="border")for(;e<g;e+=2)c||(d-=parseFloat(f.css(a,"padding"+bx[e]))||0),c==="margin"?d+=parseFloat(f.css(a,c+bx[e]))||0:d-=parseFloat(f.css(a,"border"+bx[e]+"Width"))||0;return d+"px"}d=by(a,b);if(d<0||d==null)d=a.style[b];if(bt.test(d))return d;d=parseFloat(d)||0;if(c)for(;e<g;e+=2)d+=parseFloat(f.css(a,"padding"+bx[e]))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+bx[e]+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+bx[e]))||0);return d+"px"}function bo(a){var b=c.createElement("div");bh.appendChild(b),b.innerHTML=a.outerHTML;return b.firstChild}function bn(a){var b=(a.nodeName||"").toLowerCase();b==="input"?bm(a):b!=="script"&&typeof a.getElementsByTagName!="undefined"&&f.grep(a.getElementsByTagName("input"),bm)}function bm(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bl(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bk(a,b){var c;b.nodeType===1&&(b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),c==="object"?b.outerHTML=a.outerHTML:c!=="input"||a.type!=="checkbox"&&a.type!=="radio"?c==="option"?b.selected=a.defaultSelected:c==="input"||c==="textarea"?b.defaultValue=a.defaultValue:c==="script"&&b.text!==a.text&&(b.text=a.text):(a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value)),b.removeAttribute(f.expando),b.removeAttribute("_submit_attached"),b.removeAttribute("_change_attached"))}function bj(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c,d,e,g=f._data(a),h=f._data(b,g),i=g.events;if(i){delete h.handle,h.events={};for(c in i)for(d=0,e=i[c].length;d<e;d++)f.event.add(b,c,i[c][d])}h.data&&(h.data=f.extend({},h.data))}}function bi(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function U(a){var b=V.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function T(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(O.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?+d:j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c<d;c++)b[a[c]]=!0;return b}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){if(typeof c!="string"||!c)return null;var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b,c){var d;if(b){if(H)return H.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h,i){var j,k=d==null,l=0,m=a.length;if(d&&typeof d=="object"){for(l in d)e.access(a,c,l,d[l],1,h,f);g=1}else if(f!==b){j=i===b&&e.isFunction(f),k&&(j?(j=c,c=function(a,b,c){return j.call(e(a),c)}):(c.call(a,f),c=null));if(c)for(;l<m;l++)c(a[l],d,j?f.call(a[l],l,c(a[l],d)):f,i);g=1}return g?a:k?c.call(a):m?c(a[0],d):h},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=r.exec(a)||s.exec(a)||t.exec(a)||a.indexOf("compatible")<0&&u.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g={};f.Callbacks=function(a){a=a?g[a]||h(a):{};var c=[],d=[],e,i,j,k,l,m,n=function(b){var d,e,g,h,i;for(d=0,e=b.length;d<e;d++)g=b[d],h=f.type(g),h==="array"?n(g):h==="function"&&(!a.unique||!p.has(g))&&c.push(g)},o=function(b,f){f=f||[],e=!a.memory||[b,f],i=!0,j=!0,m=k||0,k=0,l=c.length;for(;c&&m<l;m++)if(c[m].apply(b,f)===!1&&a.stopOnFalse){e=!0;break}j=!1,c&&(a.once?e===!0?p.disable():c=[]:d&&d.length&&(e=d.shift(),p.fireWith(e[0],e[1])))},p={add:function(){if(c){var a=c.length;n(arguments),j?l=c.length:e&&e!==!0&&(k=a,o(e[0],e[1]))}return this},remove:function(){if(c){var b=arguments,d=0,e=b.length;for(;d<e;d++)for(var f=0;f<c.length;f++)if(b[d]===c[f]){j&&f<=l&&(l--,f<=m&&m--),c.splice(f--,1);if(a.unique)break}}return this},has:function(a){if(c){var b=0,d=c.length;for(;b<d;b++)if(a===c[b])return!0}return!1},empty:function(){c=[];return this},disable:function(){c=d=e=b;return this},disabled:function(){return!c},lock:function(){d=b,(!e||e===!0)&&p.disable();return this},locked:function(){return!d},fireWith:function(b,c){d&&(j?a.once||d.push([b,c]):(!a.once||!e)&&o(b,c));return this},fire:function(){p.fireWith(this,arguments);return this},fired:function(){return!!i}};return p};var i=[].slice;f.extend({Deferred:function(a){var b=f.Callbacks("once memory"),c=f.Callbacks("once memory"),d=f.Callbacks("memory"),e="pending",g={resolve:b,reject:c,notify:d},h={done:b.add,fail:c.add,progress:d.add,state:function(){return e},isResolved:b.fired,isRejected:c.fired,then:function(a,b,c){i.done(a).fail(b).progress(c);return this},always:function(){i.done.apply(i,arguments).fail.apply(i,arguments);return this},pipe:function(a,b,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[b,"reject"],progress:[c,"notify"]},function(a,b){var c=b[0],e=b[1],g;f.isFunction(c)?i[a](function(){g=c.apply(this,arguments),g&&f.isFunction(g.promise)?g.promise().then(d.resolve,d.reject,d.notify):d[e+"With"](this===i?d:this,[g])}):i[a](d[e])})}).promise()},promise:function(a){if(a==null)a=h;else for(var b in h)a[b]=h[b];return a}},i=h.promise({}),j;for(j in g)i[j]=g[j].fire,i[j+"With"]=g[j].fireWith;i.done(function(){e="resolved"},c.disable,d.lock).fail(function(){e="rejected"},b.disable,d.lock),a&&a.call(i,i);return i},when:function(a){function m(a){return function(b){e[a]=arguments.length>1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c<d;c++)b[c]&&b[c].promise&&f.isFunction(b[c].promise)?b[c].promise().then(l(c),j.reject,m(c)):--g;g||j.resolveWith(j,b)}else j!==a&&j.resolveWith(j,d?[a]:[]);return k}}),f.support=function(){var b,d,e,g,h,i,j,k,l,m,n,o,p=c.createElement("div"),q=c.documentElement;p.setAttribute("className","t"),p.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=p.getElementsByTagName("*"),e=p.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=p.getElementsByTagName("input")[0],b={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:p.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,pixelMargin:!0},f.boxModel=b.boxModel=c.compatMode==="CSS1Compat",i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete p.test}catch(r){b.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",function(){b.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),i.setAttribute("name","t"),p.appendChild(i),j=c.createDocumentFragment(),j.appendChild(p.lastChild),b.checkClone=j.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,j.removeChild(i),j.appendChild(p);if(p.attachEvent)for(n in{submit:1,change:1,focusin:1})m="on"+n,o=m in p,o||(p.setAttribute(m,"return;"),o=typeof p[m]=="function"),b[n+"Bubbles"]=o;j.removeChild(p),j=g=h=p=i=null,f(function(){var d,e,g,h,i,j,l,m,n,q,r,s,t,u=c.getElementsByTagName("body")[0];!u||(m=1,t="padding:0;margin:0;border:",r="position:absolute;top:0;left:0;width:1px;height:1px;",s=t+"0;visibility:hidden;",n="style='"+r+t+"5px solid #000;",q="<div "+n+"display:block;'><div style='"+t+"0;display:block;overflow:hidden;'></div></div>"+"<table "+n+"' cellpadding='0' cellspacing='0'>"+"<tr><td></td></tr></table>",d=c.createElement("div"),d.style.cssText=s+"width:0;height:0;position:static;top:0;margin-top:"+m+"px",u.insertBefore(d,u.firstChild),p=c.createElement("div"),d.appendChild(p),p.innerHTML="<table><tr><td style='"+t+"0;display:none'></td><td>t</td></tr></table>",k=p.getElementsByTagName("td"),o=k[0].offsetHeight===0,k[0].style.display="",k[1].style.display="none",b.reliableHiddenOffsets=o&&k[0].offsetHeight===0,a.getComputedStyle&&(p.innerHTML="",l=c.createElement("div"),l.style.width="0",l.style.marginRight="0",p.style.width="2px",p.appendChild(l),b.reliableMarginRight=(parseInt((a.getComputedStyle(l,null)||{marginRight:0}).marginRight,10)||0)===0),typeof p.style.zoom!="undefined"&&(p.innerHTML="",p.style.width=p.style.padding="1px",p.style.border=0,p.style.overflow="hidden",p.style.display="inline",p.style.zoom=1,b.inlineBlockNeedsLayout=p.offsetWidth===3,p.style.display="block",p.style.overflow="visible",p.innerHTML="<div style='width:5px;'></div>",b.shrinkWrapBlocks=p.offsetWidth!==3),p.style.cssText=r+s,p.innerHTML=q,e=p.firstChild,g=e.firstChild,i=e.nextSibling.firstChild.firstChild,j={doesNotAddBorder:g.offsetTop!==5,doesAddBorderForTableAndCells:i.offsetTop===5},g.style.position="fixed",g.style.top="20px",j.fixedPosition=g.offsetTop===20||g.offsetTop===15,g.style.position=g.style.top="",e.style.overflow="hidden",e.style.position="relative",j.subtractsBorderForOverflowNotVisible=g.offsetTop===-5,j.doesNotIncludeMarginInBodyOffset=u.offsetTop!==m,a.getComputedStyle&&(p.style.marginTop="1%",b.pixelMargin=(a.getComputedStyle(p,null)||{marginTop:0}).marginTop!=="1%"),typeof d.style.zoom!="undefined"&&(d.style.zoom=1),u.removeChild(d),l=p=d=null,f.extend(b,j))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e<g;e++)delete d[b[e]];if(!(c?m:f.isEmptyObject)(d))return}}if(!c){delete j[k].data;if(!m(j[k]))return}f.support.deleteExpando||!j.setInterval?delete j[k]:j[k]=null,i&&(f.support.deleteExpando?delete a[h]:a.removeAttribute?a.removeAttribute(h):a[h]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d,e,g,h,i,j=this[0],k=0,m=null;if(a===b){if(this.length){m=f.data(j);if(j.nodeType===1&&!f._data(j,"parsedAttrs")){g=j.attributes;for(i=g.length;k<i;k++)h=g[k].name,h.indexOf("data-")===0&&(h=f.camelCase(h.substring(5)),l(j,h,m[h]));f._data(j,"parsedAttrs",!0)}}return m}if(typeof a=="object")return this.each(function(){f.data(this,a)});d=a.split(".",2),d[1]=d[1]?"."+d[1]:"",e=d[1]+"!";return f.access(this,function(c){if(c===b){m=this.triggerHandler("getData"+e,[d[0]]),m===b&&j&&(m=f.data(j,a),m=l(j,a,m));return m===b&&d[1]?this.data(d[0]):m}d[1]=c,this.each(function(){var b=f(this);b.triggerHandler("setData"+e,d),f.data(this,a,c),b.triggerHandler("changeData"+e,d)})},null,c,arguments.length>1,null,!1)},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",f._data(a,b,(f._data(a,b)||0)+1))},_unmark:function(a,b,c){a!==!0&&(c=b,b=a,a=!1);if(b){c=c||"fx";var d=c+"mark",e=a?0:(f._data(b,d)||1)-1;e?f._data(b,d,e):(f.removeData(b,d,!0),n(b,c,"mark"))}},queue:function(a,b,c){var d;if(a){b=(b||"fx")+"queue",d=f._data(a,b),c&&(!d||f.isArray(c)?d=f._data(a,b,f.makeArray(c)):d.push(c));return d||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e={};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),f._data(a,b+".run",e),d.call(a,function(){f.dequeue(a,b)},e)),c.length||(f.removeData(a,b+"queue "+b+".run",!0),n(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){var d=2;typeof a!="string"&&(c=a,a="fx",d--);if(arguments.length<d)return f.queue(this[0],a);return c===b?this:this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f.Callbacks("once memory"),!0))h++,l.add(m);m();return d.promise(c)}});var o=/[\n\t\r]/g,p=/\s+/,q=/\r/g,r=/^(?:button|input)$/i,s=/^(?:button|input|object|select|textarea)$/i,t=/^a(?:rea)?$/i,u=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,v=f.support.getSetAttribute,w,x,y;f.fn.extend({attr:function(a,b){return f.access(this,f.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,f.prop,a,b,arguments.length>1)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(p);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(p);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(o," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(p);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(o," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.type]||f.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.type]||f.valHooks[g.nodeName.toLowerCase()];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c<d;c++){e=i[c];if(e.selected&&(f.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!f.nodeName(e.parentNode,"optgroup"))){b=f(e).val();if(j)return b;h.push(b)}}if(j&&!h.length&&i.length)return f(i[g]).val();return h},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h,i=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;i<g;i++)e=d[i],e&&(c=f.propFix[e]||e,h=u.test(e),h||f.attr(a,e,""),a.removeAttribute(v?e:c),h&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(r.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(w&&f.nodeName(a,"button"))return w.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(w&&f.nodeName(a,"button"))return w.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,g,h,i=a.nodeType;if(!!a&&i!==3&&i!==8&&i!==2){h=i!==1||!f.isXMLDoc(a),h&&(c=f.propFix[c]||c,g=f.propHooks[c]);return d!==b?g&&"set"in g&&(e=g.set(a,d,c))!==b?e:a[c]=d:g&&"get"in g&&(e=g.get(a,c))!==null?e:a[c]}},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):s.test(a.nodeName)||t.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabindex=f.propHooks.tabIndex,x={get:function(a,c){var d,e=f.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},v||(y={name:!0,id:!0,coords:!0},w=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&(y[c]?d.nodeValue!=="":d.specified)?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.attrHooks.tabindex.set=w.set,f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})}),f.attrHooks.contenteditable={get:w.get,set:function(a,b,c){b===""&&(b="false"),w.set(a,b,c)}}),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.enctype||(f.propFix.enctype="encoding"),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/(?:^|\s)hover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(
3
+ a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")};f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler,g=p.selector),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k<c.length;k++){l=A.exec(c[k])||[],m=l[1],n=(l[2]||"").split(".").sort(),s=f.event.special[m]||{},m=(g?s.delegateType:s.bindType)||m,s=f.event.special[m]||{},o=f.extend({type:m,origType:l[1],data:e,handler:d,guid:d.guid,selector:g,quick:g&&G(g),namespace:n.join(".")},p),r=j[m];if(!r){r=j[m]=[],r.delegateCount=0;if(!s.setup||s.setup.call(a,e,n,i)===!1)a.addEventListener?a.addEventListener(m,i,!1):a.attachEvent&&a.attachEvent("on"+m,i)}s.add&&(s.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid)),g?r.splice(r.delegateCount++,0,o):r.push(o),f.event.global[m]=!0}a=null}},global:{},remove:function(a,b,c,d,e){var g=f.hasData(a)&&f._data(a),h,i,j,k,l,m,n,o,p,q,r,s;if(!!g&&!!(o=g.events)){b=f.trim(I(b||"")).split(" ");for(h=0;h<b.length;h++){i=A.exec(b[h])||[],j=k=i[1],l=i[2];if(!j){for(j in o)f.event.remove(a,j+b[h],c,d,!0);continue}p=f.event.special[j]||{},j=(d?p.delegateType:p.bindType)||j,r=o[j]||[],m=r.length,l=l?new RegExp("(^|\\.)"+l.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(n=0;n<r.length;n++)s=r[n],(e||k===s.origType)&&(!c||c.guid===s.guid)&&(!l||l.test(s.namespace))&&(!d||d===s.selector||d==="**"&&s.selector)&&(r.splice(n--,1),s.selector&&r.delegateCount--,p.remove&&p.remove.call(a,s));r.length===0&&m!==r.length&&((!p.teardown||p.teardown.call(a,l)===!1)&&f.removeEvent(a,j,g.handle),delete o[j])}f.isEmptyObject(o)&&(q=g.handle,q&&(q.elem=null),f.removeData(a,["events","handle"],!0))}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){if(!e||e.nodeType!==3&&e.nodeType!==8){var h=c.type||c,i=[],j,k,l,m,n,o,p,q,r,s;if(E.test(h+f.event.triggered))return;h.indexOf("!")>=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;l<r.length&&!c.isPropagationStopped();l++)m=r[l][0],c.type=r[l][1],q=(f._data(m,"events")||{})[c.type]&&f._data(m,"handle"),q&&q.apply(m,d),q=o&&m[o],q&&f.acceptData(m)&&q.apply(m,d)===!1&&c.preventDefault();c.type=h,!g&&!c.isDefaultPrevented()&&(!p._default||p._default.apply(e.ownerDocument,d)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)&&o&&e[h]&&(h!=="focus"&&h!=="blur"||c.target.offsetWidth!==0)&&!f.isWindow(e)&&(n=e[o],n&&(e[o]=null),f.event.triggered=h,e[h](),f.event.triggered=b,n&&(e[o]=n));return c.result}},dispatch:function(c){c=f.event.fix(c||a.event);var d=(f._data(this,"events")||{})[c.type]||[],e=d.delegateCount,g=[].slice.call(arguments,0),h=!c.exclusive&&!c.namespace,i=f.event.special[c.type]||{},j=[],k,l,m,n,o,p,q,r,s,t,u;g[0]=c,c.delegateTarget=this;if(!i.preDispatch||i.preDispatch.call(this,c)!==!1){if(e&&(!c.button||c.type!=="click")){n=f(this),n.context=this.ownerDocument||this;for(m=c.target;m!=this;m=m.parentNode||this)if(m.disabled!==!0){p={},r=[],n[0]=m;for(k=0;k<e;k++)s=d[k],t=s.selector,p[t]===b&&(p[t]=s.quick?H(m,s.quick):n.is(t)),p[t]&&r.push(s);r.length&&j.push({elem:m,matches:r})}}d.length>e&&j.push({elem:this,matches:d.slice(e)});for(k=0;k<j.length&&!c.isPropagationStopped();k++){q=j[k],c.currentTarget=q.elem;for(l=0;l<q.matches.length&&!c.isImmediatePropagationStopped();l++){s=q.matches[l];if(h||!c.namespace&&!s.namespace||c.namespace_re&&c.namespace_re.test(s.namespace))c.data=s.data,c.handleObj=s,o=((f.event.special[s.origType]||{}).handle||s.handler).apply(q.elem,g),o!==b&&(c.result=o,o===!1&&(c.preventDefault(),c.stopPropagation()))}}i.postDispatch&&i.postDispatch.call(this,c);return c.result}},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode);return a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,d){var e,f,g,h=d.button,i=d.fromElement;a.pageX==null&&d.clientX!=null&&(e=a.target.ownerDocument||c,f=e.documentElement,g=e.body,a.pageX=d.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=d.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?d.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0);return a}},fix:function(a){if(a[f.expando])return a;var d,e,g=a,h=f.event.fixHooks[a.type]||{},i=h.props?this.props.concat(h.props):this.props;a=f.Event(g);for(d=i.length;d;)e=i[--d],a[e]=g[e];a.target||(a.target=g.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey===b&&(a.metaKey=a.ctrlKey);return h.filter?h.filter(a,g):a},special:{ready:{setup:f.bindReady},load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=f.extend(new f.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?f.event.trigger(e,null,b):f.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},f.event.handle=f.event.dispatch,f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!(this instanceof f.Event))return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?K:J):this.type=a,b&&f.extend(this,b),this.timeStamp=a&&a.timeStamp||f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=K;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=K;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=K,this.stopPropagation()},isDefaultPrevented:J,isPropagationStopped:J,isImmediatePropagationStopped:J},f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c=this,d=a.relatedTarget,e=a.handleObj,g=e.selector,h;if(!d||d!==c&&!f.contains(c,d))a.type=e.origType,h=e.handler.apply(this,arguments),a.type=b;return h}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(){if(f.nodeName(this,"form"))return!1;f.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=f.nodeName(c,"input")||f.nodeName(c,"button")?c.form:b;d&&!d._submit_attached&&(f.event.add(d,"submit._submit",function(a){a._submit_bubble=!0}),d._submit_attached=!0)})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&f.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){if(f.nodeName(this,"form"))return!1;f.event.remove(this,"._submit")}}),f.support.changeBubbles||(f.event.special.change={setup:function(){if(z.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")f.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),f.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1,f.event.simulate("change",this,a,!0))});return!1}f.event.add(this,"beforeactivate._change",function(a){var b=a.target;z.test(b.nodeName)&&!b._change_attached&&(f.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&f.event.simulate("change",this.parentNode,a,!0)}),b._change_attached=!0)})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){f.event.remove(this,"._change");return z.test(this.nodeName)}}),f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){var d=0,e=function(a){f.event.simulate(b,a.target,f.event.fix(a),!0)};f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.fn.extend({on:function(a,c,d,e,g){var h,i;if(typeof a=="object"){typeof c!="string"&&(d=d||c,c=b);for(i in a)this.on(i,c,d,a[i],g);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=J;else if(!e)return this;g===1&&(h=e,e=function(a){f().off(a);return h.apply(this,arguments)},e.guid=h.guid||(h.guid=f.guid++));return this.each(function(){f.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,c,d){if(a&&a.preventDefault&&a.handleObj){var e=a.handleObj;f(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler);return this}if(typeof a=="object"){for(var g in a)this.off(g,c,a[g]);return this}if(c===!1||typeof c=="function")d=c,c=b;d===!1&&(d=J);return this.each(function(){f.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){f(this.context).on(a,this.selector,b,c);return this},die:function(a,b){f(this.context).off(a,this.selector||"**",b);return this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length==1?this.off(a,"**"):this.off(b,a,c)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f._data(this,"lastToggle"+a.guid)||0)%d;f._data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}if(j.nodeType===1){g||(j[d]=c,j.sizset=h);if(typeof b!="string"){if(j===b){k=!0;break}}else if(m.filter(b,[j]).length>0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}j.nodeType===1&&!g&&(j[d]=c,j.sizset=h);if(j.nodeName.toLowerCase()===b){k=j;break}j=j[a]}e[h]=k}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},m.matches=function(a,b){return m(a,null,null,b)},m.matchesSelector=function(a,b){return m(b,null,null,[a]).length>0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e<f;e++){h=o.order[e];if(g=o.leftMatch[h].exec(a)){i=g[1],g.splice(1,1);if(i.substr(i.length-1)!=="\\"){g[1]=(g[1]||"").replace(j,""),d=o.find[h](g,b,c);if(d!=null){a=a.replace(o.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},m.filter=function(a,c,d,e){var f,g,h,i,j,k,l,n,p,q=a,r=[],s=c,t=c&&c[0]&&m.isXML(c[0]);while(a&&c.length){for(h in o.filter)if((f=o.leftMatch[h].exec(a))!=null&&f[2]){k=o.filter[h],l=f[1],g=!1,f.splice(1,1);if(l.substr(l.length-1)==="\\")continue;s===r&&(r=[]);if(o.preFilter[h]){f=o.preFilter[h](f,s,d,r,e,t);if(!f)g=i=!0;else if(f===!0)continue}if(f)for(n=0;(j=s[n])!=null;n++)j&&(i=k(j,f,n,s),p=e^i,d&&i!=null?p?g=!0:s[n]=!1:p&&(r.push(j),g=!0));if(i!==b){d||(s=r),a=a.replace(o.match[h],"");if(!g)return[];break}}if(a===q)if(g==null)m.error(a);else break;q=a}return s},m.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)};var n=m.getText=function(a){var b,c,d=a.nodeType,e="";if(d){if(d===1||d===9||d===11){if(typeof a.textContent=="string")return a.textContent;if(typeof a.innerText=="string")return a.innerText.replace(k,"");for(a=a.firstChild;a;a=a.nextSibling)e+=n(a)}else if(d===3||d===4)return a.nodeValue}else for(b=0;c=a[b];b++)c.nodeType!==8&&(e+=n(c));return e},o=m.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|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!l.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&m.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&m.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("previousSibling",b,f,a,d,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(j,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}m.error(e)},CHILD:function(a,b){var c,e,f,g,h,i,j,k=b[1],l=a;switch(k){case"only":case"first":while(l=l.previousSibling)if(l.nodeType===1)return!1;if(k==="first")return!0;l=a;case"last":while(l=l.nextSibling)if(l.nodeType===1)return!1;return!0;case"nth":c=b[2],e=b[3];if(c===1&&e===0)return!0;f=b[0],g=a.parentNode;if(g&&(g[d]!==f||!a.nodeIndex)){i=0;for(l=g.firstChild;l;l=l.nextSibling)l.nodeType===1&&(l.nodeIndex=++i);g[d]=f}j=a.nodeIndex-e;return c===0?j===0:j%c===0&&j/c>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));o.match.globalPOS=p;var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var u,v;c.documentElement.compareDocumentPosition?u=function(a,b){if(a===b){h=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(u=function(a,b){if(a===b){h=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,i=b.parentNode,j=g;if(g===i)return v(a,b);if(!g)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return v(e[k],f[k]);return k===c?v(a,f[k],-1):v(e[k],b,1)},v=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h<i;h++)m(a,g[h],e,c);return m.filter(f,e)};m.attr=f.attr,m.selectors.attrMap={},f.find=m,f.expr=m.selectors,f.expr[":"]=f.expr.filters,f.unique=m.uniqueSort,f.text=m.getText,f.isXMLDoc=m.isXML,f.contains=m.contains}();var L=/Until$/,M=/^(?:parents|prevUntil|prevAll)/,N=/,/,O=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,Q=f.expr.match.globalPOS,R={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(T(this,a,!1),"not",a)},filter:function(a){return this.pushStack(T(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?Q.test(a)?f(a,this.context).index(this[0])>=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d<a.length;d++)f(g).is(a[d])&&c.push({selector:a[d],elem:g,level:h});g=g.parentNode,h++}return c}var i=Q.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(i?i.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|style)/i,bb=/<(?:script|object|embed|option|style)/i,bc=new RegExp("<(?:"+V+")[\\s/>]","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){return f.access(this,function(a){return a===b?f.text(this):this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f
4
+ .clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){return f.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(;d<e;d++)c=this[d]||{},c.nodeType===1&&(f.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(g){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bi(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,function(a,b){b.src?f.ajax({type:"GET",global:!1,url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i,j=a[0];b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof j=="string"&&j.length<512&&i===c&&j.charAt(0)==="<"&&!bb.test(j)&&(f.support.checkClone||!bd.test(j))&&(f.support.html5Clone||!bc.test(j))&&(g=!0,h=f.fragments[j],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[j]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||f.isXMLDoc(a)||!bc.test("<"+a.nodeName+">")?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g,h,i,j=[];b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);for(var k=0,l;(l=a[k])!=null;k++){typeof l=="number"&&(l+="");if(!l)continue;if(typeof l=="string")if(!_.test(l))l=b.createTextNode(l);else{l=l.replace(Y,"<$1></$2>");var m=(Z.exec(l)||["",""])[1].toLowerCase(),n=bg[m]||bg._default,o=n[0],p=b.createElement("div"),q=bh.childNodes,r;b===c?bh.appendChild(p):U(b).appendChild(p),p.innerHTML=n[1]+l+n[2];while(o--)p=p.lastChild;if(!f.support.tbody){var s=$.test(l),t=m==="table"&&!s?p.firstChild&&p.firstChild.childNodes:n[1]==="<table>"&&!s?p.childNodes:[];for(i=t.length-1;i>=0;--i)f.nodeName(t[i],"tbody")&&!t[i].childNodes.length&&t[i].parentNode.removeChild(t[i])}!f.support.leadingWhitespace&&X.test(l)&&p.insertBefore(b.createTextNode(X.exec(l)[0]),p.firstChild),l=p.childNodes,p&&(p.parentNode.removeChild(p),q.length>0&&(r=q[q.length-1],r&&r.parentNode&&r.parentNode.removeChild(r)))}var u;if(!f.support.appendChecked)if(l[0]&&typeof (u=l.length)=="number")for(i=0;i<u;i++)bn(l[i]);else bn(l);l.nodeType?j.push(l):j=f.merge(j,l)}if(d){g=function(a){return!a.type||be.test(a.type)};for(k=0;j[k];k++){h=j[k];if(e&&f.nodeName(h,"script")&&(!h.type||be.test(h.type)))e.push(h.parentNode?h.parentNode.removeChild(h):h);else{if(h.nodeType===1){var v=f.grep(h.getElementsByTagName("script"),g);j.splice.apply(j,[k+1,0].concat(v))}d.appendChild(h)}}}return j},cleanData:function(a){var b,c,d=f.cache,e=f.event.special,g=f.support.deleteExpando;for(var h=0,i;(i=a[h])!=null;h++){if(i.nodeName&&f.noData[i.nodeName.toLowerCase()])continue;c=i[f.expando];if(c){b=d[c];if(b&&b.events){for(var j in b.events)e[j]?f.event.remove(i,j):f.removeEvent(i,j,b.handle);b.handle&&(b.handle.elem=null)}g?delete i[f.expando]:i.removeAttribute&&i.removeAttribute(f.expando),delete d[c]}}}});var bp=/alpha\([^)]*\)/i,bq=/opacity=([^)]*)/,br=/([A-Z]|^ms)/g,bs=/^[\-+]?(?:\d*\.)?\d+$/i,bt=/^-?(?:\d*\.)?\d+(?!px)[^\d\s]+$/i,bu=/^([\-+])=([\-+.\de]+)/,bv=/^margin/,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Top","Right","Bottom","Left"],by,bz,bA;f.fn.css=function(a,c){return f.access(this,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)},a,c,arguments.length>1)},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=by(a,"opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=bu.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(by)return by(a,c)},swap:function(a,b,c){var d={},e,f;for(f in b)d[f]=a.style[f],a.style[f]=b[f];e=c.call(a);for(f in b)a.style[f]=d[f];return e}}),f.curCSS=f.css,c.defaultView&&c.defaultView.getComputedStyle&&(bz=function(a,b){var c,d,e,g,h=a.style;b=b.replace(br,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b))),!f.support.pixelMargin&&e&&bv.test(b)&&bt.test(c)&&(g=h.width,h.width=c,c=e.width,h.width=g);return c}),c.documentElement.currentStyle&&(bA=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f==null&&g&&(e=g[b])&&(f=e),bt.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),by=bz||bA,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth!==0?bB(a,b,d):f.swap(a,bw,function(){return bB(a,b,d)})},set:function(a,b){return bs.test(b)?b+"px":b}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bq.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bp,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bp.test(g)?g.replace(bp,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){return f.swap(a,{display:"inline-block"},function(){return b?by(a,"margin-right"):a.style.marginRight})}})}),f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)}),f.each({margin:"",padding:"",border:"Width"},function(a,b){f.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bx[d]+b]=e[d]||e[d-2]||e[0];return f}}});var bC=/%20/g,bD=/\[\]$/,bE=/\r?\n/g,bF=/#.*$/,bG=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bH=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bI=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bJ=/^(?:GET|HEAD)$/,bK=/^\/\//,bL=/\?/,bM=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bN=/^(?:select|textarea)/i,bO=/\s+/,bP=/([?&])_=[^&]*/,bQ=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bR=f.fn.load,bS={},bT={},bU,bV,bW=["*/"]+["*"];try{bU=e.href}catch(bX){bU=c.createElement("a"),bU.href="",bU=bU.href}bV=bQ.exec(bU.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bR)return bR.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bM,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bN.test(this.nodeName)||bH.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bE,"\r\n")}}):{name:b.name,value:c.replace(bE,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b$(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b$(a,b);return a},ajaxSettings:{url:bU,isLocal:bI.test(bV[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bW},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bY(bS),ajaxTransport:bY(bT),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?ca(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cb(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bG.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bF,"").replace(bK,bV[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bO),d.crossDomain==null&&(r=bQ.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bV[1]&&r[2]==bV[2]&&(r[3]||(r[1]==="http:"?80:443))==(bV[3]||(bV[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bZ(bS,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bJ.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bL.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bP,"$1_="+x);d.url=y+(y===d.url?(bL.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bW+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bZ(bT,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)b_(g,a[g],c,e);return d.join("&").replace(bC,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cc=f.now(),cd=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cc++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=typeof b.data=="string"&&/^application\/x\-www\-form\-urlencoded/.test(b.contentType);if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cd.test(b.url)||e&&cd.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cd,l),b.url===j&&(e&&(k=k.replace(cd,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ce=a.ActiveXObject?function(){for(var a in cg)cg[a](0,1)}:!1,cf=0,cg;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ch()||ci()}:ch,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ce&&delete cg[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n);try{m.text=h.responseText}catch(a){}try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cf,ce&&(cg||(cg={},f(a).unload(ce)),cg[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cj={},ck,cl,cm=/^(?:toggle|show|hide)$/,cn=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,co,cp=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cq;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(ct("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),(e===""&&f.css(d,"display")==="none"||!f.contains(d.ownerDocument.documentElement,d))&&f._data(d,"olddisplay",cu(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(ct("hide",3),a,b,c);var d,e,g=0,h=this.length;for(;g<h;g++)d=this[g],d.style&&(e=f.css(d,"display"),e!=="none"&&!f._data(d,"olddisplay")&&f._data(d,"olddisplay",e));for(g=0;g<h;g++)this[g].style&&(this[g].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(ct("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){function g(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o,p,q;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]);if((k=f.cssHooks[g])&&"expand"in k){l=k.expand(a[g]),delete a[g];for(i in l)i in a||(a[i]=l[i])}}for(g in a){h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(!f.support.inlineBlockNeedsLayout||cu(this.nodeName)==="inline"?this.style.display="inline-block":this.style.zoom=1))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)j=new f.fx(this,b,i),h=a[i],cm.test(h)?(q=f._data(this,"toggle"+i)||(h==="toggle"?d?"show":"hide":0),q?(f._data(this,"toggle"+i,q==="show"?"hide":"show"),j[q]()):j[h]()):(m=cn.exec(h),n=j.cur(),m?(o=parseFloat(m[2]),p=m[3]||(f.cssNumber[i]?"":"px"),p!=="px"&&(f.style(this,i,(o||1)+p),n=(o||1)/j.cur()*n,f.style(this,i,n+p)),m[1]&&(o=(m[1]==="-="?-1:1)*o+n),j.custom(n,o,p)):j.custom(n,h,""));return!0}var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return e.queue===!1?this.each(g):this.queue(e.queue,g)},stop:function(a,c,d){typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]);return this.each(function(){function h(a,b,c){var e=b[c];f.removeData(a,c,!0),e.stop(d)}var b,c=!1,e=f.timers,g=f._data(this);d||f._unmark(!0,this);if(a==null)for(b in g)g[b]&&g[b].stop&&b.indexOf(".run")===b.length-4&&h(this,g,b);else g[b=a+".run"]&&g[b].stop&&h(this,g,b);for(b=e.length;b--;)e[b].elem===this&&(a==null||e[b].queue===a)&&(d?e[b](!0):e[b].saveState(),c=!0,e.splice(b,1));(!d||!c)&&f.dequeue(this,a)})}}),f.each({slideDown:ct("show",1),slideUp:ct("hide",1),slideToggle:ct("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue?f.dequeue(this,d.queue):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a){return a},swing:function(a){return-Math.cos(a*Math.PI)/2+.5}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,c,d){function h(a){return e.step(a)}var e=this,g=f.fx;this.startTime=cq||cr(),this.end=c,this.now=this.start=a,this.pos=this.state=0,this.unit=d||this.unit||(f.cssNumber[this.prop]?"":"px"),h.queue=this.options.queue,h.elem=this.elem,h.saveState=function(){f._data(e.elem,"fxshow"+e.prop)===b&&(e.options.hide?f._data(e.elem,"fxshow"+e.prop,e.start):e.options.show&&f._data(e.elem,"fxshow"+e.prop,e.end))},h()&&f.timers.push(h)&&!co&&(co=setInterval(g.tick,g.interval))},show:function(){var a=f._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=a||f.style(this.elem,this.prop),this.options.show=!0,a!==b?this.custom(this.cur(),a):this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f._data(this.elem,"fxshow"+this.prop)||f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b,c,d,e=cq||cr(),g=!0,h=this.elem,i=this.options;if(a||e>=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||f.fx.stop()},interval:13,stop:function(){clearInterval(co),co=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=a.now+a.unit:a.elem[a.prop]=a.now}}}),f.each(cp.concat.apply([],cp),function(a,b){b.indexOf("margin")&&(f.fx.step[b]=function(a){f.style(a.elem,b,Math.max(0,a.now)+a.unit)})}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cv,cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?cv=function(a,b,c,d){try{d=a.getBoundingClientRect()}catch(e){}if(!d||!f.contains(c,a))return d?{top:d.top,left:d.left}:{top:0,left:0};var g=b.body,h=cy(b),i=c.clientTop||g.clientTop||0,j=c.clientLeft||g.clientLeft||0,k=h.pageYOffset||f.support.boxModel&&c.scrollTop||g.scrollTop,l=h.pageXOffset||f.support.boxModel&&c.scrollLeft||g.scrollLeft,m=d.top+k-i,n=d.left+l-j;return{top:m,left:n}}:cv=function(a,b,c){var d,e=a.offsetParent,g=a,h=b.body,i=b.defaultView,j=i?i.getComputedStyle(a,null):a.currentStyle,k=a.offsetTop,l=a.offsetLeft;while((a=a.parentNode)&&a!==h&&a!==c){if(f.support.fixedPosition&&j.position==="fixed")break;d=i?i.getComputedStyle(a,null):a.currentStyle,k-=a.scrollTop,l-=a.scrollLeft,a===e&&(k+=a.offsetTop,l+=a.offsetLeft,f.support.doesNotAddBorder&&(!f.support.doesAddBorderForTableAndCells||!cw.test(a.nodeName))&&(k+=parseFloat(d.borderTopWidth)||0,l+=parseFloat(d.borderLeftWidth)||0),g=e,e=a.offsetParent),f.support.subtractsBorderForOverflowNotVisible&&d.overflow!=="visible"&&(k+=parseFloat(d.borderTopWidth)||0,l+=parseFloat(d.borderLeftWidth)||0),j=d}if(j.position==="relative"||j.position==="static")k+=h.offsetTop,l+=h.offsetLeft;f.support.fixedPosition&&j.position==="fixed"&&(k+=Math.max(c.scrollTop,h.scrollTop),l+=Math.max(c.scrollLeft,h.scrollLeft));return{top:k,left:l}},f.fn.offset=function(a){if(arguments.length)return a===b?this:this.each(function(b){f.offset.setOffset(this,a,b)});var c=this[0],d=c&&c.ownerDocument;if(!d)return null;if(c===d.body)return f.offset.bodyOffset(c);return cv(c,d,d.documentElement)},f.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);f.fn[a]=function(e){return f.access(this,function(a,e,g){var h=cy(a);if(g===b)return h?c in h?h[c]:f.support.boxModel&&h.document.documentElement[e]||h.document.body[e]:a[e];h?h.scrollTo(d?f(h).scrollLeft():g,d?g:f(h).scrollTop(