summaryrefslogtreecommitdiff
path: root/StoneIsland
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2020-05-06 15:21:54 +0200
committerJules Laplace <julescarbon@gmail.com>2020-05-06 15:21:54 +0200
commit9c18073017b5cc2334bf1867c004bfc74ba5a92a (patch)
tree6e0d18d602babd4532499f25224c36aed9af61a5 /StoneIsland
parent91eff5910a8a7d55159bdeb0f5b8d4945be0da48 (diff)
update build
Diffstat (limited to 'StoneIsland')
-rw-r--r--StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileHashes.binbin422132 -> 422132 bytes
-rw-r--r--StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileSnapshots.binbin5464279 -> 5541731 bytes
-rw-r--r--StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.binbin270945 -> 270945 bytes
-rw-r--r--StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.lockbin17 -> 17 bytes
-rw-r--r--StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.lockbin17 -> 17 bytes
-rw-r--r--StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localJarClasspathSnapshot/localJarClasspathSnapshot.lockbin17 -> 17 bytes
-rwxr-xr-xStoneIsland/platforms/android/AndroidManifest.xml2
-rwxr-xr-xStoneIsland/platforms/android/assets/www/css/account.css8
-rwxr-xr-xStoneIsland/platforms/android/assets/www/css/blogs.css36
-rwxr-xr-xStoneIsland/platforms/android/assets/www/css/index.css13
-rwxr-xr-xStoneIsland/platforms/android/assets/www/css/nav.css80
-rw-r--r--StoneIsland/platforms/android/assets/www/css/vendor/imageviewer.css4
-rwxr-xr-xStoneIsland/platforms/android/assets/www/index.html24
-rwxr-xr-xStoneIsland/platforms/android/assets/www/js/lib/account/ProfileView.js2
-rwxr-xr-xStoneIsland/platforms/android/assets/www/js/lib/auth/LoginView.js2
-rwxr-xr-xStoneIsland/platforms/android/assets/www/js/lib/auth/SignupView.js24
-rwxr-xr-xStoneIsland/platforms/android/assets/www/js/lib/blogs/StoryView.js2
-rw-r--r--StoneIsland/platforms/android/assets/www/js/lib/etc/accessibility.js4
-rwxr-xr-xStoneIsland/platforms/android/assets/www/js/lib/nav/CurtainView.js2
-rwxr-xr-xStoneIsland/platforms/android/assets/www/js/lib/nav/NavView.js8
-rwxr-xr-xStoneIsland/platforms/android/assets/www/js/lib/view/Serializable.js9
-rw-r--r--StoneIsland/platforms/android/assets/www/js/vendor/imageviewer.js11
-rw-r--r--StoneIsland/platforms/android/res/xml/config.xml2
-rw-r--r--StoneIsland/platforms/ios/CordovaLib/CordovaLib.xcodeproj/xcuserdata/user.xcuserdatad/xcschemes/xcschememanagement.plist4
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Info.plist6
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Assets.carbin1178600 -> 1480848 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nibbin2283 -> 0 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/objects-13.0+.nibbin0 -> 2330 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/runtime.nibbin0 -> 2326 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nibbin832 -> 0 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/objects-13.0+.nibbin0 -> 896 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/runtime.nibbin0 -> 896 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Info.plistbin1760 -> 1852 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nibbin943 -> 0 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib/objects-13.0+.nibbin0 -> 980 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib/runtime.nibbin0 -> 980 bytes
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Stone Islandbin2324304 -> 2324368 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/_CodeSignature/CodeResources239
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/config.xml2
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/account.css11
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/blogs.css36
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/cart.css13
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/fonts/ionicons.css15
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/index.css13
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/nav.css102
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/vendor/imageviewer.css4
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/index.html225
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/index.js4
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/LoginView.js2
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/SignupView.js44
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/HubView.js8
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/StoryView.js4
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartConfirm.js8
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartPayment.js17
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartShipping.js11
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartSummary.js12
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/etc/accessibility.js6
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/CurtainView.js2
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/NavView.js16
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/CollectionView.js3
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/GalleryView.js53
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/ProductView.js4
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/view/Serializable.js11
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/vendor/imageviewer.js11
-rw-r--r--StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstatebin38956 -> 31759 bytes
-rw-r--r--StoneIsland/platforms/ios/Stone Island/Stone Island-Info.plist4
-rwxr-xr-xStoneIsland/platforms/ios/Stone Island/config.xml2
-rwxr-xr-xStoneIsland/platforms/ios/www/css/account.css3
-rwxr-xr-xStoneIsland/platforms/ios/www/css/cart.css13
-rwxr-xr-xStoneIsland/platforms/ios/www/css/fonts/ionicons.css15
-rwxr-xr-xStoneIsland/platforms/ios/www/css/nav.css22
-rwxr-xr-xStoneIsland/platforms/ios/www/index.html201
-rwxr-xr-xStoneIsland/platforms/ios/www/js/index.js4
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/auth/SignupView.js31
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/blogs/HubView.js8
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/blogs/StoryView.js4
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/cart/CartConfirm.js8
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/cart/CartPayment.js17
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/cart/CartShipping.js11
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/cart/CartSummary.js12
-rw-r--r--StoneIsland/platforms/ios/www/js/lib/etc/accessibility.js2
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/nav/NavView.js8
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/products/CollectionView.js3
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/products/GalleryView.js53
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/products/ProductView.js4
-rwxr-xr-xStoneIsland/platforms/ios/www/js/lib/view/Serializable.js2
86 files changed, 1042 insertions, 504 deletions
diff --git a/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileHashes.bin b/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileHashes.bin
index 16a05746..fbc77f3a 100644
--- a/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileHashes.bin
+++ b/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileHashes.bin
Binary files differ
diff --git a/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileSnapshots.bin b/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileSnapshots.bin
index afc21d86..7288e2f3 100644
--- a/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileSnapshots.bin
+++ b/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/fileSnapshots.bin
Binary files differ
diff --git a/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.bin b/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.bin
index 654d6093..5dce2d6f 100644
--- a/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.bin
+++ b/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.bin
Binary files differ
diff --git a/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.lock b/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.lock
index 20e5a3a0..ece2358e 100644
--- a/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.lock
+++ b/StoneIsland/platforms/android/.gradle/3.3/taskArtifacts/taskArtifacts.lock
Binary files differ
diff --git a/StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.lock b/StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.lock
index 11c32db9..1ed23d39 100644
--- a/StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.lock
+++ b/StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.lock
Binary files differ
diff --git a/StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localJarClasspathSnapshot/localJarClasspathSnapshot.lock b/StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localJarClasspathSnapshot/localJarClasspathSnapshot.lock
index 8e6837da..1be520bb 100644
--- a/StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localJarClasspathSnapshot/localJarClasspathSnapshot.lock
+++ b/StoneIsland/platforms/android/.gradle/3.3/tasks/_compileReleaseJavaWithJavac/localJarClasspathSnapshot/localJarClasspathSnapshot.lock
Binary files differ
diff --git a/StoneIsland/platforms/android/AndroidManifest.xml b/StoneIsland/platforms/android/AndroidManifest.xml
index 4949ed38..e5232423 100755
--- a/StoneIsland/platforms/android/AndroidManifest.xml
+++ b/StoneIsland/platforms/android/AndroidManifest.xml
@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
-<manifest android:hardwareAccelerated="true" android:versionCode="6124" android:versionName="1.2.4" package="us.okfoc.stoneisland" xmlns:android="http://schemas.android.com/apk/res/android">
+<manifest android:hardwareAccelerated="true" android:versionCode="6126" android:versionName="1.2.6" package="us.okfoc.stoneisland" xmlns:android="http://schemas.android.com/apk/res/android">
<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<application android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name" android:supportsRtl="true">
diff --git a/StoneIsland/platforms/android/assets/www/css/account.css b/StoneIsland/platforms/android/assets/www/css/account.css
index 12adb2d9..998b6eac 100755
--- a/StoneIsland/platforms/android/assets/www/css/account.css
+++ b/StoneIsland/platforms/android/assets/www/css/account.css
@@ -557,16 +557,20 @@ input.switch:checked + label:after {
}
.container-row .half-input input {
-margin-top:0px
+ margin-top:0px;
}
.newuser {
display:inline-block;
padding:18px;
text-decoration:underline
+ border: 1px solid black;
+ margin: 0 8px 0 0;
}
.forgotpassword {
padding:18px;
text-decoration:underline
-} \ No newline at end of file
+ border: 1px solid black;
+ margin: 0 0 0 8px;
+}
diff --git a/StoneIsland/platforms/android/assets/www/css/blogs.css b/StoneIsland/platforms/android/assets/www/css/blogs.css
index c4b74c19..ee54a31f 100755
--- a/StoneIsland/platforms/android/assets/www/css/blogs.css
+++ b/StoneIsland/platforms/android/assets/www/css/blogs.css
@@ -6,20 +6,23 @@
margin: 15px 0 0;
text-align: center;
text-transform:uppercase;
- display:flex;
+ display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
flex-wrap: wrap;
}
#story .links li {
+ display: block;
+ list-style-type: none;
+ font-size: 1rem;
+}
+#story .links li div {
display: flex;
justify-content: center;
align-items: center;
height: 48px;
padding: 0 15px;
- list-style-type: none;
- font-size: 1rem;
}
.accessible #story .links {
flex-wrap: wrap;
@@ -166,6 +169,10 @@
position:absolute;
display:block;
}
+.accessible .gallery-left,
+.accessible .gallery-right {
+ width: 48px;
+}
@-webkit-keyframes gallery-fade {
0%{opacity:0}
@@ -259,14 +266,25 @@ ul.links {
width: 100%;
pointer-events: none;
}
-#archive .menu .items,
-#archive .row .image,
-#archive .row .text {
+#archive .menu .items {
position: absolute;
top: 50%; left: 50%;
transform-origin: 50% 50%;
transform: translateZ(0) translateX(-50%) translateY(-50%);
}
+#archive .row .image {
+ position: absolute;
+ top: 10%; left: 50%;
+ transform-origin: 50% 50%;
+ transform: translateZ(0) translateX(-50%) translateY(0%);
+}
+#archive .row .text {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ min-height: 80vh;
+ padding: 16px 0;
+}
#archive .menu {
position: fixed;
display: none;
@@ -278,7 +296,8 @@ ul.links {
.accessible #archive .row .image,
.accessible #archive .row .text {
position: relative;
- top: auto; left: auto;
+ top: auto;
+ left: auto;
transform: translateZ(0);
}
@@ -338,6 +357,7 @@ ul.links {
}
#archive .row .image {
width: 100%; height: 100%;
+ max-height: 80vh;
background-repeat: no-repeat;
background-size: contain;
background-position: center center;
@@ -348,7 +368,7 @@ ul.links {
background-position: center center;
background-image: url('../img/spinner.gif') !important;
}
-#archive .row .text {
+#archive .row .text > div {
width: 80%;
}
.accessible #archive .row .image {
diff --git a/StoneIsland/platforms/android/assets/www/css/index.css b/StoneIsland/platforms/android/assets/www/css/index.css
index 83b3353a..2130c675 100755
--- a/StoneIsland/platforms/android/assets/www/css/index.css
+++ b/StoneIsland/platforms/android/assets/www/css/index.css
@@ -102,6 +102,19 @@ html.vscroll {
.error_hilite ~ span.err {
display: flex;
}
+.err_heading {
+ display: none;
+}
+.err_heading.error_visible {
+ display: flex;
+ text-align: center;
+ justify-content: center;
+ align-items: center;
+ font-size: 0.875rem;
+ height: 64px;
+ padding: 12px;
+ color: red !important;
+}
span.err {
display: none;
text-align: center;
diff --git a/StoneIsland/platforms/android/assets/www/css/nav.css b/StoneIsland/platforms/android/assets/www/css/nav.css
index f555ce99..705c0824 100755
--- a/StoneIsland/platforms/android/assets/www/css/nav.css
+++ b/StoneIsland/platforms/android/assets/www/css/nav.css
@@ -2,7 +2,7 @@
/* NAV BAR */
#nav {
- position: absolute;
+ position: fixed;
top: 0; left: 0;
width: 249px;
-webkit-transform: translateZ(0) translateX(-249px);
@@ -10,7 +10,7 @@
background: #fff;
}
#content {
- position: absolute;
+ position: fixed;
top: 0; left: 0;
width: 100%; height: 100%;
overflow: hidden;
@@ -23,6 +23,10 @@
.nav #content {
-webkit-transform: translateZ(0) translateX(249px);
}
+.accessible #nav,
+.accessible #content {
+ position: absolute;
+}
#nav .logo {
background-image: url(../img/small-logo.png);
background-repeat: no-repeat;
@@ -85,19 +89,62 @@
#nav .social {
position: absolute;
- bottom: 0;
+ top: calc(100vh - 48px);
left: 0;
border-top: 1px solid #ddd;
+ display: flex;
+ flex-direction: row;
}
#nav .social span {
display: block;
- float: left;
width: 61px;
border-left: 1px solid #ddd;
color: #666;
font-size: 1.125rem;
- padding: 5px 0;
+ height: 48px;
text-align: center;
+ justify-content: center;
+ align-items: center;
+ display: flex;
+}
+
+#nav .close {
+ position: absolute;
+ top: 0;
+ right: 0;
+ width: 48px;
+ height: 48px;
+ cursor: pointer;
+ text-align: center;
+ overflow: hidden;
+ -webkit-transition: all ease 200ms;
+ -moz-transition: all ease 200ms;
+ -o-transition: all ease 200ms;
+ transition: all ease 200ms;
+}
+#nav .close:after,
+#nav .close:before {
+ content: "";
+ height: 1px;
+ width: 24px;
+ background: #888;
+ position: absolute;
+ left: 25%;
+ top: 50%;
+}
+#nav .close:before {
+ -webkit-transform: rotate(45deg);
+ -moz-transform: rotate(45deg);
+ -ms-transform: rotate(45deg);
+ -o-transform: rotate(45deg);
+ transform: rotate(45deg);
+}
+#nav .close:after {
+ -webkit-transform: rotate(-45deg);
+ -moz-transform: rotate(-45deg);
+ -ms-transform: rotate(-45deg);
+ -o-transform: rotate(-45deg);
+ transform: rotate(-45deg);
}
#nav-container {
@@ -198,7 +245,8 @@ padding-bottom:0px;
/* HEADER AND FOOTER ON MOST PAGES */
#header {
- display: block;
+ display: flex;
+ justify-content: space-between;
position: absolute;
top: 0; left: 0; width: 100%;
height: 48px;
@@ -216,9 +264,15 @@ padding-bottom:0px;
top:0px;
}
#header .burger {
- display: inline-block;
+ display: flex;
font-size: 24px;
- padding: 12px 13px 7px;
+ width: 48px;
+ height: 48px;
+ padding-top: 4px;
+ box-sizing: border-box;
+ align-items: center;
+ flex-direction: row;
+ justify-content: center;
}
#header .cart_rapper {
@@ -268,7 +322,7 @@ padding-bottom:0px;
#footer {
display: block;
- position: absolute;
+ position: fixed;
bottom: 0; left: 0; width: 100%;
background: #fff;
border-top: 1px solid #ddd;
@@ -296,13 +350,16 @@ padding-bottom:0px;
#footer .ok.disabled {
color: #666;
}
+.accessible #footer {
+ position: absolute;
+}
/* CURTAIN FOR LOGIN AND SELECTOR VIEWS */
#curtain {
pointer-events: none;
- position: absolute;
+ position: fixed;
top: 0; left: 0;
width: 100%; height: 100%;
background: rgba(255,255,255,0.8);
@@ -312,6 +369,9 @@ padding-bottom:0px;
-webkit-transform: translateZ(0) translateX(0);
transform: translateZ(0) translateX(0);
}
+.accessible #curtain {
+ position: absolute;
+}
#curtain.visible {
pointer-events: auto;
opacity: 1;
diff --git a/StoneIsland/platforms/android/assets/www/css/vendor/imageviewer.css b/StoneIsland/platforms/android/assets/www/css/vendor/imageviewer.css
index af346f08..739c37a1 100644
--- a/StoneIsland/platforms/android/assets/www/css/vendor/imageviewer.css
+++ b/StoneIsland/platforms/android/assets/www/css/vendor/imageviewer.css
@@ -22,8 +22,8 @@
}
.iv-close {
- width: 32px;
- height: 32px;
+ width: 48px;
+ height: 48px;
position: fixed;
right: 20px;
top: 20px;
diff --git a/StoneIsland/platforms/android/assets/www/index.html b/StoneIsland/platforms/android/assets/www/index.html
index a422832c..568161e5 100755
--- a/StoneIsland/platforms/android/assets/www/index.html
+++ b/StoneIsland/platforms/android/assets/www/index.html
@@ -16,6 +16,7 @@
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height">
+ <meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="css/fonts/fonts.css">
<link rel="stylesheet" type="text/css" href="css/fonts/ionicons.css">
<link rel="stylesheet" type="text/css" href="css/vendor/flickity.css">
@@ -37,6 +38,7 @@
<span role="menu" class="menu">
<div class="logo" aria-label="Stone Island"></div>
+ <div class="close" role="button" aria-label="Close menu"></div>
<div role="menu" aria-label="Main Menu" class="main_menu">
<span role="menuitem" class="store">STORE</span>
<span role="menuitem" class="hub">HUB</span>
@@ -169,12 +171,14 @@
<script type="text/html" class="template">
<div class="image" aria-label="{{label}}" style="background-image:url({{image}})"></div>
<div class="text">
- <h2>
- <b>{{code}}</b><br>
- {{label}}
- </h2>
- <div class="body">
- {{caption}}
+ <div>
+ <h2>
+ <b>{{code}}</b><br>
+ {{label}}
+ </h2>
+ <div class="body">
+ {{caption}}
+ </div>
</div>
</div>
@@ -288,7 +292,7 @@
<div class="loader"></div>
<div class="content">
<script type="text/html" class="template">
- <div role="link" class="item" data-code="{{code8}}">
+ <div role="link" class="item" data-code="{{code8}}" aria-label="{{title}}">
<img src="{{image}}" alt="{{title}}">
</div>
</script>
@@ -377,6 +381,7 @@
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="login_email_address">Email Address</label>
<input type="email" id="login_email_address" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="1">
<span class='err'></span>
@@ -419,6 +424,7 @@
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="signup_name">First Name</label>
<input type="text" id="signup_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
<span class='err'></span>
@@ -502,6 +508,7 @@
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="profile_name">First Name</label>
<input type="text" id="profile_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
<span class='err'></span>
@@ -575,6 +582,7 @@
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<div class="address"></div>
</div>
<div class="container-fill">
@@ -599,6 +607,7 @@
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<div class="cc"></div>
<div class="address"></div>
</div>
@@ -875,6 +884,7 @@
<div class="billing-container container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<div class="checkbox-container">
<div class="checkbox-row">
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/account/ProfileView.js b/StoneIsland/platforms/android/assets/www/js/lib/account/ProfileView.js
index 4a081b38..1bbfff22 100755
--- a/StoneIsland/platforms/android/assets/www/js/lib/account/ProfileView.js
+++ b/StoneIsland/platforms/android/assets/www/js/lib/account/ProfileView.js
@@ -49,7 +49,7 @@ var ProfileView = FormView.extend({
"Name": "Please enter your first name.",
"Surname": "Please enter your last name.",
"Email": "Please enter a valid email address.",
- "BirthDay": "Please your birthday.",
+ // "BirthDay": "Please enter your birthday.",
},
validate_fields: function(data, errors){
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/auth/LoginView.js b/StoneIsland/platforms/android/assets/www/js/lib/auth/LoginView.js
index 7458d159..4927bea2 100755
--- a/StoneIsland/platforms/android/assets/www/js/lib/auth/LoginView.js
+++ b/StoneIsland/platforms/android/assets/www/js/lib/auth/LoginView.js
@@ -33,7 +33,7 @@ var LoginView = FormView.extend({
},
forgot_password: function(){
- window.open("http://www.stoneisland.com/", '_system')
+ window.open("https://www.stoneisland.com/yTos/Plugins/AreaLocalizer/Redirectarea?area=Account&controllerName=User&actionName=Index", '_system')
},
validate_presence: {
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/auth/SignupView.js b/StoneIsland/platforms/android/assets/www/js/lib/auth/SignupView.js
index 66d8f239..b16ff887 100755
--- a/StoneIsland/platforms/android/assets/www/js/lib/auth/SignupView.js
+++ b/StoneIsland/platforms/android/assets/www/js/lib/auth/SignupView.js
@@ -114,19 +114,19 @@ var SignupView = FormView.extend({
},
error: function(data){
- try {
- data = JSON.parse(data.responseText)
- app.signup.show_errors([[ 'Name', data['Error']['Description'] ]])
- }
- catch (e) {
- switch (data.status) {
- case 409:
- app.signup.show_errors([[ 'Email', "Email is already in use." ]])
- break
- default:
+ switch (data.status) {
+ case 409:
+ app.signup.show_errors([[ 'Email', "Email is already in use." ]])
+ break
+ default:
+ try {
+ data = JSON.parse(data.responseText)
+ app.signup.show_errors([[ 'Name', data['Error']['Description'] ]])
+ }
+ catch (e) {
app.signup.show_errors([[ 'Name', "There was an unknown error." ]])
- break
- }
+ }
+ break
}
},
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/blogs/StoryView.js b/StoneIsland/platforms/android/assets/www/js/lib/blogs/StoryView.js
index 0b3b17d7..71f1cc0c 100755
--- a/StoneIsland/platforms/android/assets/www/js/lib/blogs/StoryView.js
+++ b/StoneIsland/platforms/android/assets/www/js/lib/blogs/StoryView.js
@@ -40,7 +40,7 @@ var StoryView = ScrollableView.extend({
.replace(/{{body}}/, row.body.replace(/\n/g, "<br>"))
var li = document.createElement("li")
li.dataset.id = row.id
- li.innerHTML = row.title
+ li.innerHTML = "<div>" + row.title + "</div>"
li.setAttribute('role', "link")
this.sections[row.id] = row
this.$links.append(li)
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/etc/accessibility.js b/StoneIsland/platforms/android/assets/www/js/lib/etc/accessibility.js
index 31ddaf23..c66143cc 100644
--- a/StoneIsland/platforms/android/assets/www/js/lib/etc/accessibility.js
+++ b/StoneIsland/platforms/android/assets/www/js/lib/etc/accessibility.js
@@ -30,8 +30,8 @@ var accessibility = (function() {
MobileAccessibility.getTextZoom(function getTextZoomCallback(textZoom) {
console.log('WebView text should be scaled to the preferred value ' + textZoom + '%')
if (textZoom > 100) {
- app.accessible = true
- $("html").addClass('accessible')
+ // app.accessible = true
+ // $("html").addClass('accessible')
}
});
MobileAccessibility.isVoiceOverRunning(function(state){
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/nav/CurtainView.js b/StoneIsland/platforms/android/assets/www/js/lib/nav/CurtainView.js
index ddb6bc19..d444fd60 100755
--- a/StoneIsland/platforms/android/assets/www/js/lib/nav/CurtainView.js
+++ b/StoneIsland/platforms/android/assets/www/js/lib/nav/CurtainView.js
@@ -28,7 +28,7 @@ var CurtainView = View.extend({
},
click: function(){
- if (document.body.classList.contains("nav") && !app.accessible) {
+ if (document.body.classList.contains("nav")) {
app.nav.hide()
}
if (app.selector.visible) {
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/nav/NavView.js b/StoneIsland/platforms/android/assets/www/js/lib/nav/NavView.js
index 1655b7f8..a9a1938e 100755
--- a/StoneIsland/platforms/android/assets/www/js/lib/nav/NavView.js
+++ b/StoneIsland/platforms/android/assets/www/js/lib/nav/NavView.js
@@ -37,6 +37,8 @@ var NavView = View.extend({
"click .insta": "insta",
"click .tw": "tw",
"click .yt": "yt",
+
+ "click .close": "close",
},
initialize: function(){
@@ -161,7 +163,7 @@ var NavView = View.extend({
fb: function(){
- window.open(is_ios ? "facebook://profile/231623463406" : "https://www.facebook.com/StoneIsland", '_system')
+ window.open("https://www.facebook.com/StoneIsland", '_system')
},
insta: function(){
window.open("https://instagram.com/stoneisland_official", '_system')
@@ -173,4 +175,8 @@ var NavView = View.extend({
window.open("https://www.youtube.com/user/StoneIslandOfficial", '_system')
},
+ close: function(){
+ this.hide()
+ },
+
})
diff --git a/StoneIsland/platforms/android/assets/www/js/lib/view/Serializable.js b/StoneIsland/platforms/android/assets/www/js/lib/view/Serializable.js
index 3181fddd..08802fa9 100755
--- a/StoneIsland/platforms/android/assets/www/js/lib/view/Serializable.js
+++ b/StoneIsland/platforms/android/assets/www/js/lib/view/Serializable.js
@@ -104,6 +104,7 @@ var SerializableView = View.extend({
console.log("showing errors")
console.log(errors)
var msgs = []
+ this.$('.err_heading').addClass('error_visible')
this.$('.error_hilite').removeClass('error_hilite')
this.$('.err').html('')
errors.forEach(function(e, i){
@@ -114,6 +115,9 @@ var SerializableView = View.extend({
if (el && el.nodeName === 'SELECT') {
$el.parent().addClass('error_hilite')
$el.parent().next('.err').html(e[1])
+ } else if (el && el.type === 'date') {
+ $el.parent().addClass('error_hilite')
+ $el.parent().next('.err').html(e[1])
} else {
$el.addClass('error_hilite')
$el.next('.err').html(e[1])
@@ -123,6 +127,9 @@ var SerializableView = View.extend({
}.bind(this))
// this.$msg.html(msgs.join("<br>"))
this.$msg.addClass('alert-notice')
+ if (app.view.scroller) {
+ app.view.scroller.scrollTo(0, 0)
+ }
},
hide_errors: function(){
@@ -137,6 +144,8 @@ var SerializableView = View.extend({
save: function(e){
e && e.preventDefault()
+ this.$('.err_heading').removeClass('error_visible')
+
var valid = this.validate()
if (valid.errors.length) {
this.show_errors(valid.errors)
diff --git a/StoneIsland/platforms/android/assets/www/js/vendor/imageviewer.js b/StoneIsland/platforms/android/assets/www/js/vendor/imageviewer.js
index 847c6070..d80ae7ed 100644
--- a/StoneIsland/platforms/android/assets/www/js/vendor/imageviewer.js
+++ b/StoneIsland/platforms/android/assets/www/js/vendor/imageviewer.js
@@ -85,7 +85,7 @@
//add a full screen view
$(function () {
if(!$body.length) $body = $('body');
- $body.append('<div id="iv-container">' + imageViewHtml + '<div class="iv-close"></div><div>');
+ $body.append('<div id="iv-container">' + imageViewHtml + '<div class="iv-close" role="button" aria-label="Close this image."></div><div>');
imageViewHtml = null
});
@@ -674,10 +674,10 @@
height: handleHeight + '%'
});
},
- show: function (image, hiResImg) {
+ show: function (image, hiResImg, message) {
if (this._fullPage) {
this.container.show();
- if (image) this.load(image, hiResImg);
+ if (image) this.load(image, hiResImg, message);
}
},
hide: function () {
@@ -701,9 +701,10 @@
$window.off(eventSuffix);
return null;
},
- load: function (image, hiResImgSrc) {
+ load: function (image, hiResImgSrc, message) {
var self = this,
container = this.container;
+ message = message || 'Viewing high-resolution image. Pinch to zoom or tap to close.'
container.find('.iv-snap-image,.iv-large-image').remove();
var snapImageWrap = this.container.find('.iv-snap-image-wrap');
@@ -711,9 +712,11 @@
var snapImage = new Image
snapImage.className = 'iv-snap-image'
snapImage.src = image
+ snapImage.setAttribute('aria-label', message)
var largeImage = new Image
largeImage.className = 'iv-large-image'
+ largeImage.setAttribute('aria-label', message)
var hiResImg;
diff --git a/StoneIsland/platforms/android/res/xml/config.xml b/StoneIsland/platforms/android/res/xml/config.xml
index ad4929e6..c9de73ec 100644
--- a/StoneIsland/platforms/android/res/xml/config.xml
+++ b/StoneIsland/platforms/android/res/xml/config.xml
@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
-<widget android-versionCode="6124" id="us.okfoc.stoneisland" version="1.2.4" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+<widget android-versionCode="6126" id="us.okfoc.stoneisland" version="1.2.6" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<feature name="InAppBrowser">
<param name="android-package" value="org.apache.cordova.inappbrowser.InAppBrowser" />
</feature>
diff --git a/StoneIsland/platforms/ios/CordovaLib/CordovaLib.xcodeproj/xcuserdata/user.xcuserdatad/xcschemes/xcschememanagement.plist b/StoneIsland/platforms/ios/CordovaLib/CordovaLib.xcodeproj/xcuserdata/user.xcuserdatad/xcschemes/xcschememanagement.plist
index 1020c69e..4f3362e8 100644
--- a/StoneIsland/platforms/ios/CordovaLib/CordovaLib.xcodeproj/xcuserdata/user.xcuserdatad/xcschemes/xcschememanagement.plist
+++ b/StoneIsland/platforms/ios/CordovaLib/CordovaLib.xcodeproj/xcuserdata/user.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -12,7 +12,7 @@
<key>Cordova.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
- <integer>3</integer>
+ <integer>4</integer>
</dict>
<key>CordovaLib.xcscheme</key>
<dict>
@@ -22,7 +22,7 @@
<key>CordovaLib.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
- <integer>2</integer>
+ <integer>3</integer>
</dict>
</dict>
</dict>
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Info.plist b/StoneIsland/platforms/ios/Stone Island.xcarchive/Info.plist
index 492b3406..b7bca5d8 100644
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Info.plist
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Info.plist
@@ -9,9 +9,9 @@
<key>CFBundleIdentifier</key>
<string>us.okfoc.stoneisland</string>
<key>CFBundleShortVersionString</key>
- <string>1.2.4</string>
+ <string>1.3.1</string>
<key>CFBundleVersion</key>
- <string>1.2.4</string>
+ <string>1.3.1</string>
<key>SigningIdentity</key>
<string>iPhone Developer: Francesca Agusani (3ECUPBTQ5W)</string>
<key>Team</key>
@@ -20,7 +20,7 @@
<key>ArchiveVersion</key>
<integer>2</integer>
<key>CreationDate</key>
- <date>2019-10-15T13:42:26Z</date>
+ <date>2020-03-24T19:43:52Z</date>
<key>Name</key>
<string>Stone Island</string>
<key>SchemeName</key>
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Assets.car b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Assets.car
index 6c786a61..fa0be41c 100644
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Assets.car
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Assets.car
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib
deleted file mode 100644
index a5c0a5af..00000000
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib
+++ /dev/null
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/objects-13.0+.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/objects-13.0+.nib
new file mode 100644
index 00000000..b11078f5
--- /dev/null
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/objects-13.0+.nib
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/runtime.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/runtime.nib
new file mode 100644
index 00000000..4e0ef4db
--- /dev/null
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/runtime.nib
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib
deleted file mode 100644
index 200094d3..00000000
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib
+++ /dev/null
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/objects-13.0+.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/objects-13.0+.nib
new file mode 100644
index 00000000..5de432f5
--- /dev/null
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/objects-13.0+.nib
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/runtime.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/runtime.nib
new file mode 100644
index 00000000..a38cdd57
--- /dev/null
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/runtime.nib
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Info.plist b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Info.plist
index 1f6abc6f..4615ed35 100644
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Info.plist
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Info.plist
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib
deleted file mode 100644
index 26c95177..00000000
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib
+++ /dev/null
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib/objects-13.0+.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib/objects-13.0+.nib
new file mode 100644
index 00000000..bc7ac1d6
--- /dev/null
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib/objects-13.0+.nib
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib/runtime.nib b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib/runtime.nib
new file mode 100644
index 00000000..2ce7cc28
--- /dev/null
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/MainViewController.nib/runtime.nib
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Stone Island b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Stone Island
index 1ba4f7d6..30448412 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Stone Island
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/Stone Island
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/_CodeSignature/CodeResources b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/_CodeSignature/CodeResources
index f426ba0f..3b2ca5d8 100644
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/_CodeSignature/CodeResources
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/_CodeSignature/CodeResources
@@ -94,19 +94,27 @@
</data>
<key>Assets.car</key>
<data>
- Kwar1Lpeq1PSL1k9Htg3b88BLOU=
+ UzpkteYLyk6goZL/VblItaK+tuI=
</data>
- <key>CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</key>
+ <key>CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/objects-13.0+.nib</key>
<data>
- EZSKMENet04qnojPKjTy87Ck+kU=
+ VFfP8G6YpQNCE9+YP8TshXoRsbM=
+ </data>
+ <key>CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/runtime.nib</key>
+ <data>
+ nY4XgF1F9CQz2EzIWv1UnRILPJY=
</data>
<key>CDVLaunchScreen.storyboardc/Info.plist</key>
<data>
n2t8gsDpfE6XkhG31p7IQJRxTxU=
</data>
- <key>CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib</key>
+ <key>CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/objects-13.0+.nib</key>
+ <data>
+ flKFZIdt4NGnXBy4VMQsFEIY6Ss=
+ </data>
+ <key>CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/runtime.nib</key>
<data>
- FjF8wMpbNRaWuLABS8u/DSNBgAQ=
+ xN5k2g+B+hbuRefGGwG1VIYXjGE=
</data>
<key>CDVNotification.bundle/beep.wav</key>
<data>
@@ -114,11 +122,15 @@
</data>
<key>Info.plist</key>
<data>
- zgJX+PBuvZOn7XqgLJ/VpeYUnIo=
+ BF4yEnRx3C0JCy4g51I2pcZHCCo=
</data>
- <key>MainViewController.nib</key>
+ <key>MainViewController.nib/objects-13.0+.nib</key>
<data>
- KTqOI00Es51zeiXqiLVhUoSBkik=
+ Vs2JX6XhI7Z46fXsbspAW/l5QOk=
+ </data>
+ <key>MainViewController.nib/runtime.nib</key>
+ <data>
+ dAGDe2Cs/GAlO48LNC5//wE9WxU=
</data>
<key>PkgInfo</key>
<data>
@@ -126,7 +138,7 @@
</data>
<key>config.xml</key>
<data>
- fz52wQVVOwlkB35iTIUIMBC2dhA=
+ qHjCgw4SROklA7TNnMhgq1x9aqU=
</data>
<key>embedded.mobileprovision</key>
<data>
@@ -158,15 +170,15 @@
</data>
<key>www/css/account.css</key>
<data>
- eKr1BA3EAWpcTFL4ld37jF0TxzQ=
+ j7dvfwxGM0FLffK3rTQAhYyuHsk=
</data>
<key>www/css/blogs.css</key>
<data>
- 09ZjZlLNOQw7OoxGbKdCihckd6E=
+ qzsHGnVfspjF+ycTwycgCesQf80=
</data>
<key>www/css/cart.css</key>
<data>
- ZyDIXw2I1bbu2kJ6WiTmhqjK9t4=
+ ewfnVjJwi94kdCY2SD3ptN+UTHk=
</data>
<key>www/css/fonts/andale_mono.ttf</key>
<data>
@@ -182,7 +194,7 @@
</data>
<key>www/css/fonts/ionicons.css</key>
<data>
- gzPAFostLVCiwxkgMsSWmTe+A/c=
+ 2i13fjCPzZ5vc5cYuVrEd1s9A8w=
</data>
<key>www/css/fonts/ionicons.eot</key>
<data>
@@ -222,11 +234,11 @@
</data>
<key>www/css/index.css</key>
<data>
- FjZaDXAbT/iW9g++u7vSjJpvqqo=
+ 45Lx1pUI5yADc7ABlk+wcRSsQBY=
</data>
<key>www/css/nav.css</key>
<data>
- 3YTjhSmLpBk2MEfHRzG27nvpHHY=
+ Tc5/Z3qa/5qShOCeukuP/tl5yos=
</data>
<key>www/css/products.css</key>
<data>
@@ -238,7 +250,7 @@
</data>
<key>www/css/vendor/imageviewer.css</key>
<data>
- U9IUnW7ZX4TgGTq33Seu9eZgogE=
+ giAUAMwC7nmBxqqJX8eTEROTwMc=
</data>
<key>www/db.json</key>
<data>
@@ -350,11 +362,11 @@
</data>
<key>www/index.html</key>
<data>
- j+k8ujaqcnpJuX/czMBrEaZz8jk=
+ mvnOdc6Ioj3CjkZxyRbZN8+mfNY=
</data>
<key>www/js/index.js</key>
<data>
- HKZPM32zArXyA4bnl5aP8A4JVic=
+ X/zoPZmQ7CCcJfv+2xbajvMfDLY=
</data>
<key>www/js/lib/_router.js</key>
<data>
@@ -390,7 +402,7 @@
</data>
<key>www/js/lib/auth/LoginView.js</key>
<data>
- LuGl4dL4Jx/rfR8Gl/j5e9+R3pc=
+ mJ1ky9I35XlwdgyO2IpUNqmdkcs=
</data>
<key>www/js/lib/auth/LogoutView.js</key>
<data>
@@ -398,7 +410,7 @@
</data>
<key>www/js/lib/auth/SignupView.js</key>
<data>
- MTcOfYFwkKox30nI3rIwIiCI9is=
+ G9BQAksv6lgg2OQASgzX3gNqfmU=
</data>
<key>www/js/lib/blogs/ArchiveView.js</key>
<data>
@@ -410,7 +422,7 @@
</data>
<key>www/js/lib/blogs/HubView.js</key>
<data>
- y1ppo+9KlLX9tA/tyccz1eBydP4=
+ 3fdJKOCQX8wkqON5uQ5nHiA43ng=
</data>
<key>www/js/lib/blogs/PageView.js</key>
<data>
@@ -418,11 +430,11 @@
</data>
<key>www/js/lib/blogs/StoryView.js</key>
<data>
- M7vHWJ+TGmLMIZmfE5+/4yoqOA8=
+ +h7ITCEcPjHRxvSit3K4KCs55ag=
</data>
<key>www/js/lib/cart/CartConfirm.js</key>
<data>
- iuq4CUXVug+BpuBjg2s30SsDnKo=
+ o3Max6T4P6h6/x/c2p95kabhRq8=
</data>
<key>www/js/lib/cart/CartError.js</key>
<data>
@@ -430,15 +442,15 @@
</data>
<key>www/js/lib/cart/CartPayment.js</key>
<data>
- Rh7MFQwa1qzO7ocaH66eUldcdb8=
+ cj75r7bvMwxO8obNGagxhrxEE4I=
</data>
<key>www/js/lib/cart/CartShipping.js</key>
<data>
- Q6Zke/dqJwUl05QHcahi/ji2Mps=
+ Y/JkKZsmqPKssku8aF8Mc2JgxRU=
</data>
<key>www/js/lib/cart/CartSummary.js</key>
<data>
- YY45GTYdRxyOtQLV4xfMijFFCO4=
+ OB2IxRjCajK4rM1BNke6GjfLc4g=
</data>
<key>www/js/lib/cart/CartThanks.js</key>
<data>
@@ -450,7 +462,7 @@
</data>
<key>www/js/lib/etc/accessibility.js</key>
<data>
- WADhuojQGHPJ5xCqJ0lp+/1uIuM=
+ LegUG4+94dBf3mRwgdCq9KnehKw=
</data>
<key>www/js/lib/etc/backup_db.js</key>
<data>
@@ -486,7 +498,7 @@
</data>
<key>www/js/lib/nav/CurtainView.js</key>
<data>
- jMM1vX2zKATWpbmMS3QGayL1mvw=
+ VHa9pwxWtQ31RhBknlTCAqrKA7c=
</data>
<key>www/js/lib/nav/FooterView.js</key>
<data>
@@ -502,7 +514,7 @@
</data>
<key>www/js/lib/nav/NavView.js</key>
<data>
- A4xYkR6n0/TGMBRstzRWfCqinds=
+ doSVdvRAK0s02oiRxBhrgBhg3IA=
</data>
<key>www/js/lib/nav/SearchView.js</key>
<data>
@@ -514,15 +526,15 @@
</data>
<key>www/js/lib/products/CollectionView.js</key>
<data>
- hfcG2GVN8r6xuA4ygw3zKQk8ChY=
+ S+ME1fRs/FrMOP2/bVX7VkmgV9s=
</data>
<key>www/js/lib/products/GalleryView.js</key>
<data>
- 2uKZw/R68RVKeU/Dm93O7bC9IeA=
+ Pd10VfMBuhzoMqRHgn5WD78LZuw=
</data>
<key>www/js/lib/products/ProductView.js</key>
<data>
- NJ28uOLdIXAcLOstCEyyoSFwMFQ=
+ K3Gmx1ScVBw199xxmbJselplXKo=
</data>
<key>www/js/lib/products/Selector.js</key>
<data>
@@ -550,7 +562,7 @@
</data>
<key>www/js/lib/view/Serializable.js</key>
<data>
- h9Z7w1U81a/0iSk1479BPPEWbt0=
+ fm204jypf33bndvbcASDl9oCp+s=
</data>
<key>www/js/lib/view/View.js</key>
<data>
@@ -598,7 +610,7 @@
</data>
<key>www/js/vendor/imageviewer.js</key>
<data>
- +lvb1hPF4rBrUNXOYaIPTnT7yok=
+ jaGCh4ym/aYx7ijkm7cMET740GU=
</data>
<key>www/js/vendor/iscroll-5.1.3.js</key>
<data>
@@ -965,22 +977,33 @@
<dict>
<key>hash</key>
<data>
- Kwar1Lpeq1PSL1k9Htg3b88BLOU=
+ UzpkteYLyk6goZL/VblItaK+tuI=
</data>
<key>hash2</key>
<data>
- 1qoqioWSqyyQKmIJUeXxYG0vy0CiJcQlNNJ/lH/i1rg=
+ 2HywY+DZcj/aqJeTn5mYB1aiWIaBhlswdf7wYlPzgSA=
</data>
</dict>
- <key>CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib</key>
+ <key>CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/objects-13.0+.nib</key>
<dict>
<key>hash</key>
<data>
- EZSKMENet04qnojPKjTy87Ck+kU=
+ VFfP8G6YpQNCE9+YP8TshXoRsbM=
</data>
<key>hash2</key>
<data>
- D0At/LS/sZbaIClfPU3oVFtY9eY8EnlLe+2eOFFjCvQ=
+ uprszktF7eLPTgzY76Q2k+qzGyeO1PFNjTf5mzcaxNY=
+ </data>
+ </dict>
+ <key>CDVLaunchScreen.storyboardc/01J-lp-oVM-view-Ze5-6b-2t3.nib/runtime.nib</key>
+ <dict>
+ <key>hash</key>
+ <data>
+ nY4XgF1F9CQz2EzIWv1UnRILPJY=
+ </data>
+ <key>hash2</key>
+ <data>
+ 3Jk4kgQR151ygCu1ljRwbumGNsyu8OjZNNrXvxQYlCw=
</data>
</dict>
<key>CDVLaunchScreen.storyboardc/Info.plist</key>
@@ -994,15 +1017,26 @@
HyVdXMU7Ux4/KalAao30mpWOK/lEPT4gvYN09wf31cg=
</data>
</dict>
- <key>CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib</key>
+ <key>CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/objects-13.0+.nib</key>
+ <dict>
+ <key>hash</key>
+ <data>
+ flKFZIdt4NGnXBy4VMQsFEIY6Ss=
+ </data>
+ <key>hash2</key>
+ <data>
+ 4/jCvp8Wdg+bfnYjYZ3gQNvRsNPxbYJHejqoI26/I9g=
+ </data>
+ </dict>
+ <key>CDVLaunchScreen.storyboardc/UIViewController-01J-lp-oVM.nib/runtime.nib</key>
<dict>
<key>hash</key>
<data>
- FjF8wMpbNRaWuLABS8u/DSNBgAQ=
+ xN5k2g+B+hbuRefGGwG1VIYXjGE=
</data>
<key>hash2</key>
<data>
- FMfkQ1dI7KF4iEbm8hVdz7VI04npLUC8Tb5CFhcI7Ww=
+ BwrgwpXeFzN3bFHfFNkRaa3bG++lFwRnPm1zeuxgzp0=
</data>
</dict>
<key>CDVNotification.bundle/beep.wav</key>
@@ -1016,26 +1050,37 @@
KfYd4hFlyPwinBGKi4ruYae1MyeQ2TKrPJvIngKdC38=
</data>
</dict>
- <key>MainViewController.nib</key>
+ <key>MainViewController.nib/objects-13.0+.nib</key>
+ <dict>
+ <key>hash</key>
+ <data>
+ Vs2JX6XhI7Z46fXsbspAW/l5QOk=
+ </data>
+ <key>hash2</key>
+ <data>
+ jjJ1Sj6SCCNMgL59AIYFfQ5YgscyZS/Aj8CrLbVEMPo=
+ </data>
+ </dict>
+ <key>MainViewController.nib/runtime.nib</key>
<dict>
<key>hash</key>
<data>
- KTqOI00Es51zeiXqiLVhUoSBkik=
+ dAGDe2Cs/GAlO48LNC5//wE9WxU=
</data>
<key>hash2</key>
<data>
- lxNz93e2ckI7aZ2hWhw5PepZH8v6Z3XYr0+KYG+PaKA=
+ 8zAAT2/IYTgHABqGCN35RaODzLU4AETD3brpjJ+jaoI=
</data>
</dict>
<key>config.xml</key>
<dict>
<key>hash</key>
<data>
- fz52wQVVOwlkB35iTIUIMBC2dhA=
+ qHjCgw4SROklA7TNnMhgq1x9aqU=
</data>
<key>hash2</key>
<data>
- i6++/3MmPSGLm1VRuP6gfk6oRwhSCR8KGgWIkERgWkk=
+ 12yQe3fH1LeQ0hVJ39eZk/MOnGlavXlk1S6I8EbYLDI=
</data>
</dict>
<key>embedded.mobileprovision</key>
@@ -1119,33 +1164,33 @@
<dict>
<key>hash</key>
<data>
- eKr1BA3EAWpcTFL4ld37jF0TxzQ=
+ j7dvfwxGM0FLffK3rTQAhYyuHsk=
</data>
<key>hash2</key>
<data>
- muxUZ+sBl+nYbSQ8z1qywBMQuOmT5OBL7RnEdSG3Jtc=
+ JGSDBc3r328LDZXyxStSpGTbOO0c7/Ejb4zc60BdU6Q=
</data>
</dict>
<key>www/css/blogs.css</key>
<dict>
<key>hash</key>
<data>
- 09ZjZlLNOQw7OoxGbKdCihckd6E=
+ qzsHGnVfspjF+ycTwycgCesQf80=
</data>
<key>hash2</key>
<data>
- CtzlzhHemv5DQFCm5AUcXoTejGOsn0ds+n3TVlp03Uo=
+ 0Ref2ia2WNU/FUTXvy1d3r2wHLzp/RKcYkUFuKwjlHg=
</data>
</dict>
<key>www/css/cart.css</key>
<dict>
<key>hash</key>
<data>
- ZyDIXw2I1bbu2kJ6WiTmhqjK9t4=
+ ewfnVjJwi94kdCY2SD3ptN+UTHk=
</data>
<key>hash2</key>
<data>
- f3d2C3mOLJtjQE/lNJiCFZ15iv83OeSsRVxXgFEmPis=
+ g/hSpVnYb/dN1IchfWpxX8RG0SLLBUADGNwf1D5DUnI=
</data>
</dict>
<key>www/css/fonts/andale_mono.ttf</key>
@@ -1185,11 +1230,11 @@
<dict>
<key>hash</key>
<data>
- gzPAFostLVCiwxkgMsSWmTe+A/c=
+ 2i13fjCPzZ5vc5cYuVrEd1s9A8w=
</data>
<key>hash2</key>
<data>
- D3+gw6JE4hEJ9pnCs+BglSfZ2yG5gF+JGdPJ/v183fo=
+ zSqWaXmaFrx9/2yNRsGkVA1ewyS8J5JvHOHqojd1DtE=
</data>
</dict>
<key>www/css/fonts/ionicons.eot</key>
@@ -1295,22 +1340,22 @@
<dict>
<key>hash</key>
<data>
- FjZaDXAbT/iW9g++u7vSjJpvqqo=
+ 45Lx1pUI5yADc7ABlk+wcRSsQBY=
</data>
<key>hash2</key>
<data>
- xCGy3giHG/Ce3377XwyEjRc+f87OuATe2pRb6JMPHWo=
+ OVS3UOlBP0+h6LKr6ZFwMUtlcmMOBaE7H4RcT+LmHKk=
</data>
</dict>
<key>www/css/nav.css</key>
<dict>
<key>hash</key>
<data>
- 3YTjhSmLpBk2MEfHRzG27nvpHHY=
+ Tc5/Z3qa/5qShOCeukuP/tl5yos=
</data>
<key>hash2</key>
<data>
- FwoI86w8YrSb4aW+02/MZ61DOiKe61jDic83xX0dM+M=
+ gSBWZpcTgrCdqTWTd5EeuJQnGD7VR5imVOXmEWBKRj0=
</data>
</dict>
<key>www/css/products.css</key>
@@ -1339,11 +1384,11 @@
<dict>
<key>hash</key>
<data>
- U9IUnW7ZX4TgGTq33Seu9eZgogE=
+ giAUAMwC7nmBxqqJX8eTEROTwMc=
</data>
<key>hash2</key>
<data>
- JN5niSdpAtWf/qLG3j5+Cp9UbBc3SZAmhql6sUDsYm0=
+ hIOJjnxw91uNxU15wXKhBNQawenrYV0PSgxsJCC1Bg8=
</data>
</dict>
<key>www/db.json</key>
@@ -1647,22 +1692,22 @@
<dict>
<key>hash</key>
<data>
- j+k8ujaqcnpJuX/czMBrEaZz8jk=
+ mvnOdc6Ioj3CjkZxyRbZN8+mfNY=
</data>
<key>hash2</key>
<data>
- 1hNa7gFvckraIa19E+Kc/1nCVUYOC10ddnGAiuUBMSM=
+ DUY0p/YPCJ9QbJywWI5eHUGkOLDJmWvu3dPhXA/RG0M=
</data>
</dict>
<key>www/js/index.js</key>
<dict>
<key>hash</key>
<data>
- HKZPM32zArXyA4bnl5aP8A4JVic=
+ X/zoPZmQ7CCcJfv+2xbajvMfDLY=
</data>
<key>hash2</key>
<data>
- 2EgjPLSSAqC1As/Z/Rl2nznPFvvwC5Wki10jbIXs9l0=
+ dGAsYjZpNtIHxo9NJWKc9nX7NJDzqroz3QHwMt9dOlc=
</data>
</dict>
<key>www/js/lib/_router.js</key>
@@ -1757,11 +1802,11 @@
<dict>
<key>hash</key>
<data>
- LuGl4dL4Jx/rfR8Gl/j5e9+R3pc=
+ mJ1ky9I35XlwdgyO2IpUNqmdkcs=
</data>
<key>hash2</key>
<data>
- xY1mGGo9jS/a4bUv76OOCFhu2S4n0lmde1t4JoS0qXs=
+ v9+WN6dEVd5lMEj+ZkqNYLDKDAtT/TNayG1bOA71Y6w=
</data>
</dict>
<key>www/js/lib/auth/LogoutView.js</key>
@@ -1779,11 +1824,11 @@
<dict>
<key>hash</key>
<data>
- MTcOfYFwkKox30nI3rIwIiCI9is=
+ G9BQAksv6lgg2OQASgzX3gNqfmU=
</data>
<key>hash2</key>
<data>
- okGYzldhrc9bKc6N+F7JA9zcFcCT15r57lvjXa5NfUA=
+ li67nZkin+Pv+3rsTkT+nItuc3rqyBm1AX84JULsfVg=
</data>
</dict>
<key>www/js/lib/blogs/ArchiveView.js</key>
@@ -1812,11 +1857,11 @@
<dict>
<key>hash</key>
<data>
- y1ppo+9KlLX9tA/tyccz1eBydP4=
+ 3fdJKOCQX8wkqON5uQ5nHiA43ng=
</data>
<key>hash2</key>
<data>
- 08zv3aMQTQkctFQ7maI6vlZdUT8qgH8pujNzvkN57x4=
+ YesnqNNjw6xvZCATpg0MW1MVMqDADStRg8+/yD/LdfE=
</data>
</dict>
<key>www/js/lib/blogs/PageView.js</key>
@@ -1834,22 +1879,22 @@
<dict>
<key>hash</key>
<data>
- M7vHWJ+TGmLMIZmfE5+/4yoqOA8=
+ +h7ITCEcPjHRxvSit3K4KCs55ag=
</data>
<key>hash2</key>
<data>
- Ptn+hC3ZzEPjV65dpBcmhGPZXuxHADaB+hYGVXrEE1I=
+ 97xEVclvZkUVXxev2vJR+SWQRcIiiWi0rPGycgl4+WQ=
</data>
</dict>
<key>www/js/lib/cart/CartConfirm.js</key>
<dict>
<key>hash</key>
<data>
- iuq4CUXVug+BpuBjg2s30SsDnKo=
+ o3Max6T4P6h6/x/c2p95kabhRq8=
</data>
<key>hash2</key>
<data>
- uGxFeCC+tmJ7dwK6xkxqs1/NOuFR/4jM+M1Nv7LptcQ=
+ jzqB2knpbqudBb5fhSEmYj6C+Cf9lhJwd1wy6eVRIqM=
</data>
</dict>
<key>www/js/lib/cart/CartError.js</key>
@@ -1867,33 +1912,33 @@
<dict>
<key>hash</key>
<data>
- Rh7MFQwa1qzO7ocaH66eUldcdb8=
+ cj75r7bvMwxO8obNGagxhrxEE4I=
</data>
<key>hash2</key>
<data>
- Dmua+TQ/dybJ8bnLDgGKOkxLAsg+Aas62hoDxUTBHlI=
+ o6VIqsNo5eIZHrIa3lBkmEUyASvCDPKEWUGsgRwcCCk=
</data>
</dict>
<key>www/js/lib/cart/CartShipping.js</key>
<dict>
<key>hash</key>
<data>
- Q6Zke/dqJwUl05QHcahi/ji2Mps=
+ Y/JkKZsmqPKssku8aF8Mc2JgxRU=
</data>
<key>hash2</key>
<data>
- /kP8U2WOtm/Oo9NoovqFZjXDwErACXyQJLcF3UaVhqs=
+ Fx7yPF0lAmCjuJqNOvMIpWGZu4CYB4B7U9YpE/s8nmI=
</data>
</dict>
<key>www/js/lib/cart/CartSummary.js</key>
<dict>
<key>hash</key>
<data>
- YY45GTYdRxyOtQLV4xfMijFFCO4=
+ OB2IxRjCajK4rM1BNke6GjfLc4g=
</data>
<key>hash2</key>
<data>
- W6KjUtBseY6DQP6KTVfQ71RtGDetQuLPJwXpDfaoF/w=
+ UCcbJWSoFhN5zOTKVpaNjUyyoqY6TOBW+43I6J+iNhs=
</data>
</dict>
<key>www/js/lib/cart/CartThanks.js</key>
@@ -1922,11 +1967,11 @@
<dict>
<key>hash</key>
<data>
- WADhuojQGHPJ5xCqJ0lp+/1uIuM=
+ LegUG4+94dBf3mRwgdCq9KnehKw=
</data>
<key>hash2</key>
<data>
- Fjrwlrpwi5rt9Q6pvyftkCx9VA7KHuLHsolN4xNsu4g=
+ 4PhA4mT0S9DvCw16wPp9pwd4s9Gtz3uXcwrrcRjoToA=
</data>
</dict>
<key>www/js/lib/etc/backup_db.js</key>
@@ -2021,11 +2066,11 @@
<dict>
<key>hash</key>
<data>
- jMM1vX2zKATWpbmMS3QGayL1mvw=
+ VHa9pwxWtQ31RhBknlTCAqrKA7c=
</data>
<key>hash2</key>
<data>
- mTHx9C1uDHvID/eNa9m+BUZWt2fDcmm088SB+AnfomE=
+ m1y+MtkztLia5cyx9E5WrAch10YftRlFUZnP0EtrmDs=
</data>
</dict>
<key>www/js/lib/nav/FooterView.js</key>
@@ -2065,11 +2110,11 @@
<dict>
<key>hash</key>
<data>
- A4xYkR6n0/TGMBRstzRWfCqinds=
+ doSVdvRAK0s02oiRxBhrgBhg3IA=
</data>
<key>hash2</key>
<data>
- zNgxn74cQQEMvW4kV+XAnpegoe4e0rxKcWp7NHlWkcM=
+ lYbGNpLcOwLFihq6x55ZvvajrPNAUoIJp4hu9u7NMbw=
</data>
</dict>
<key>www/js/lib/nav/SearchView.js</key>
@@ -2098,33 +2143,33 @@
<dict>
<key>hash</key>
<data>
- hfcG2GVN8r6xuA4ygw3zKQk8ChY=
+ S+ME1fRs/FrMOP2/bVX7VkmgV9s=
</data>
<key>hash2</key>
<data>
- slRUJS17HR0ZL2gOyEOBHmJqWYLtQIJCaTHHYhwa4dQ=
+ +HK3zAkTWk+WsRMxqYPtQhoVrdBliTJx003/oNVeaIk=
</data>
</dict>
<key>www/js/lib/products/GalleryView.js</key>
<dict>
<key>hash</key>
<data>
- 2uKZw/R68RVKeU/Dm93O7bC9IeA=
+ Pd10VfMBuhzoMqRHgn5WD78LZuw=
</data>
<key>hash2</key>
<data>
- 3NKeKuDQh7LTme/6eCnTyrieaCAOHUwtwWz+wCAipjE=
+ 5/8+KWXB3fpjDBtQXtj0oD879wYAiBakvUU3fZSQxZo=
</data>
</dict>
<key>www/js/lib/products/ProductView.js</key>
<dict>
<key>hash</key>
<data>
- NJ28uOLdIXAcLOstCEyyoSFwMFQ=
+ K3Gmx1ScVBw199xxmbJselplXKo=
</data>
<key>hash2</key>
<data>
- Agl/HX2pNASS06k4rf2MyePibkjt4WQaTJVomYm9yLg=
+ 6LbqV2OdvlaATevWSumOv3JlmLNHT4WVEKEwVtHGbiU=
</data>
</dict>
<key>www/js/lib/products/Selector.js</key>
@@ -2197,11 +2242,11 @@
<dict>
<key>hash</key>
<data>
- h9Z7w1U81a/0iSk1479BPPEWbt0=
+ fm204jypf33bndvbcASDl9oCp+s=
</data>
<key>hash2</key>
<data>
- 2ZAp4f934QdZjKaeD0kh0Y6R3kIuZunfnHdEWAdIax0=
+ kozQ3mu8TicfocKvxOOAn206u5jL+X2e9+Nlsw/rNBk=
</data>
</dict>
<key>www/js/lib/view/View.js</key>
@@ -2329,11 +2374,11 @@
<dict>
<key>hash</key>
<data>
- +lvb1hPF4rBrUNXOYaIPTnT7yok=
+ jaGCh4ym/aYx7ijkm7cMET740GU=
</data>
<key>hash2</key>
<data>
- vnIzT6qSefpXefYDH2WXGOkv8wUApSxo6xw2EVQdU44=
+ hKU6Pi5UHmxCN3mMICEI9AOY+yQadUsj25OwkAhfzVE=
</data>
</dict>
<key>www/js/vendor/iscroll-5.1.3.js</key>
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/config.xml b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/config.xml
index 4368e5b6..203fbaa7 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/config.xml
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/config.xml
@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
-<widget android-versionCode="6124" id="us.okfoc.stoneisland" version="1.2.4" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+<widget android-versionCode="6131" id="us.okfoc.stoneisland" version="1.3.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<feature name="LocalStorage">
<param name="ios-package" value="CDVLocalStorage" />
</feature>
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/account.css b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/account.css
index 12adb2d9..6ea72423 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/account.css
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/account.css
@@ -139,6 +139,9 @@ label {
text-transform:uppercase;
height: 48px;
}
+.error_hilite label {
+ color: #f00;
+}
input[type=text], input[type=password], input[type=number], input[type=date], input[type=email] {
font-family:pfd, sans-serif;
font-size: 0.875rem;
@@ -557,16 +560,20 @@ input.switch:checked + label:after {
}
.container-row .half-input input {
-margin-top:0px
+ margin-top:0px;
}
.newuser {
display:inline-block;
padding:18px;
text-decoration:underline
+ border: 1px solid black;
+ margin: 0 8px 0 0;
}
.forgotpassword {
padding:18px;
text-decoration:underline
-} \ No newline at end of file
+ border: 1px solid black;
+ margin: 0 0 0 8px;
+}
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/blogs.css b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/blogs.css
index c4b74c19..ee54a31f 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/blogs.css
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/blogs.css
@@ -6,20 +6,23 @@
margin: 15px 0 0;
text-align: center;
text-transform:uppercase;
- display:flex;
+ display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
flex-wrap: wrap;
}
#story .links li {
+ display: block;
+ list-style-type: none;
+ font-size: 1rem;
+}
+#story .links li div {
display: flex;
justify-content: center;
align-items: center;
height: 48px;
padding: 0 15px;
- list-style-type: none;
- font-size: 1rem;
}
.accessible #story .links {
flex-wrap: wrap;
@@ -166,6 +169,10 @@
position:absolute;
display:block;
}
+.accessible .gallery-left,
+.accessible .gallery-right {
+ width: 48px;
+}
@-webkit-keyframes gallery-fade {
0%{opacity:0}
@@ -259,14 +266,25 @@ ul.links {
width: 100%;
pointer-events: none;
}
-#archive .menu .items,
-#archive .row .image,
-#archive .row .text {
+#archive .menu .items {
position: absolute;
top: 50%; left: 50%;
transform-origin: 50% 50%;
transform: translateZ(0) translateX(-50%) translateY(-50%);
}
+#archive .row .image {
+ position: absolute;
+ top: 10%; left: 50%;
+ transform-origin: 50% 50%;
+ transform: translateZ(0) translateX(-50%) translateY(0%);
+}
+#archive .row .text {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ min-height: 80vh;
+ padding: 16px 0;
+}
#archive .menu {
position: fixed;
display: none;
@@ -278,7 +296,8 @@ ul.links {
.accessible #archive .row .image,
.accessible #archive .row .text {
position: relative;
- top: auto; left: auto;
+ top: auto;
+ left: auto;
transform: translateZ(0);
}
@@ -338,6 +357,7 @@ ul.links {
}
#archive .row .image {
width: 100%; height: 100%;
+ max-height: 80vh;
background-repeat: no-repeat;
background-size: contain;
background-position: center center;
@@ -348,7 +368,7 @@ ul.links {
background-position: center center;
background-image: url('../img/spinner.gif') !important;
}
-#archive .row .text {
+#archive .row .text > div {
width: 80%;
}
.accessible #archive .row .image {
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/cart.css b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/cart.css
index 36a446a7..eda4cc82 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/cart.css
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/cart.css
@@ -11,7 +11,7 @@
display: flex;
flex-direction: row;
}
-#cart .steps span {
+#cart .steps div {
display: flex;
font-size: 1rem;
text-align: center;
@@ -22,6 +22,9 @@
justify-content: center;
align-items: center;
}
+#cart .steps div span {
+ pointer-events: none;
+}
.summary_step, .shipping_step {
border-right: 1px solid #666;
}
@@ -42,6 +45,14 @@
overflow: hidden;
position: relative;
}
+.vscroll #cart_summary,
+.vscroll #cart_shipping,
+.vscroll #cart_payment,
+.vscroll #cart_confirm,
+.vscroll #cart_thanks,
+.vscroll #cart_error {
+ overflow: auto;
+}
#cart.summary #cart_summary { display: block }
#cart_summary {
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/fonts/ionicons.css b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/fonts/ionicons.css
index 885aa6bd..974a91f7 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/fonts/ionicons.css
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/fonts/ionicons.css
@@ -11,7 +11,20 @@
Modified icons to fit ionicon’s grid from original.
*/
@font-face { font-family: "Ionicons"; src: url("../fonts/ionicons.eot?v=2.0.0"); src: url("../fonts/ionicons.eot?v=2.0.0#iefix") format("embedded-opentype"), url("../fonts/ionicons.ttf?v=2.0.0") format("truetype"), url("../fonts/ionicons.woff?v=2.0.0") format("woff"), url("../fonts/ionicons.svg?v=2.0.0#Ionicons") format("svg"); font-weight: normal; font-style: normal; }
-.ion, .ionicons, .ion-alert:before, .ion-alert-circled:before, .ion-android-add:before, .ion-android-add-circle:before, .ion-android-alarm-clock:before, .ion-android-alert:before, .ion-android-apps:before, .ion-android-archive:before, .ion-android-arrow-back:before, .ion-android-arrow-down:before, .ion-android-arrow-dropdown:before, .ion-android-arrow-dropdown-circle:before, .ion-android-arrow-dropleft:before, .ion-android-arrow-dropleft-circle:before, .ion-android-arrow-dropright:before, .ion-android-arrow-dropright-circle:before, .ion-android-arrow-dropup:before, .ion-android-arrow-dropup-circle:before, .ion-android-arrow-forward:before, .ion-android-arrow-up:before, .ion-android-attach:before, .ion-android-bar:before, .ion-android-bicycle:before, .ion-android-boat:before, .ion-android-bookmark:before, .ion-android-bulb:before, .ion-android-bus:before, .ion-android-calendar:before, .ion-android-call:before, .ion-android-camera:before, .ion-android-cancel:before, .ion-android-car:before, .ion-android-cart:before, .ion-android-chat:before, .ion-android-checkbox:before, .ion-android-checkbox-blank:before, .ion-android-checkbox-outline:before, .ion-android-checkbox-outline-blank:before, .ion-android-checkmark-circle:before, .ion-android-clipboard:before, .ion-android-close:before, .ion-android-cloud:before, .ion-android-cloud-circle:before, .ion-android-cloud-done:before, .ion-android-cloud-outline:before, .ion-android-color-palette:before, .ion-android-compass:before, .ion-android-contact:before, .ion-android-contacts:before, .ion-android-contract:before, .ion-android-create:before, .ion-android-delete:before, .ion-android-desktop:before, .ion-android-document:before, .ion-android-done:before, .ion-android-done-all:before, .ion-android-download:before, .ion-android-drafts:before, .ion-android-exit:before, .ion-android-expand:before, .ion-android-favorite:before, .ion-android-favorite-outline:before, .ion-android-film:before, .ion-android-folder:before, .ion-android-folder-open:before, .ion-android-funnel:before, .ion-android-globe:before, .ion-android-hand:before, .ion-android-hangout:before, .ion-android-happy:before, .ion-android-home:before, .ion-android-image:before, .ion-android-laptop:before, .ion-android-list:before, .ion-android-locate:before, .ion-android-lock:before, .ion-android-mail:before, .ion-android-map:before, .ion-android-menu:before, .ion-android-microphone:before, .ion-android-microphone-off:before, .ion-android-more-horizontal:before, .ion-android-more-vertical:before, .ion-android-navigate:before, .ion-android-notifications:before, .ion-android-notifications-none:before, .ion-android-notifications-off:before, .ion-android-open:before, .ion-android-options:before, .ion-android-people:before, .ion-android-person:before, .ion-android-person-add:before, .ion-android-phone-landscape:before, .ion-android-phone-portrait:before, .ion-android-pin:before, .ion-android-plane:before, .ion-android-playstore:before, .ion-android-print:before, .ion-android-radio-button-off:before, .ion-android-radio-button-on:before, .ion-android-refresh:before, .ion-android-remove:before, .ion-android-remove-circle:before, .ion-android-restaurant:before, .ion-android-sad:before, .ion-android-search:before, .ion-android-send:before, .ion-android-settings:before, .ion-android-share:before, .ion-android-share-alt:before, .ion-android-star:before, .ion-android-star-half:before, .ion-android-star-outline:before, .ion-android-stopwatch:before, .ion-android-subway:before, .ion-android-sunny:before, .ion-android-sync:before, .ion-android-textsms:before, .ion-android-time:before, .ion-android-train:before, .ion-android-unlock:before, .ion-android-upload:before, .ion-android-volume-down:before, .ion-android-volume-mute:before, .ion-android-volume-off:before, .ion-android-volume-up:before, .ion-android-walk:before, .ion-android-warning:before, .ion-android-watch:before, .ion-android-wifi:before, .ion-aperture:before, .ion-archive:before, .ion-arrow-down-a:before, .ion-arrow-down-b:before, .ion-arrow-down-c:before, .ion-arrow-expand:before, .ion-arrow-graph-down-left:before, .ion-arrow-graph-down-right:before, .ion-arrow-graph-up-left:before, .ion-arrow-graph-up-right:before, .ion-arrow-left-a:before, .ion-arrow-left-b:before, .ion-arrow-left-c:before, .ion-arrow-move:before, .ion-arrow-resize:before, .ion-arrow-return-left:before, .ion-arrow-return-right:before, .ion-arrow-right-a:before, .ion-arrow-right-b:before, .ion-arrow-right-c:before, .ion-arrow-shrink:before, .ion-arrow-swap:before, .ion-arrow-up-a:before, .ion-arrow-up-b:before, .ion-arrow-up-c:before, .ion-asterisk:before, .ion-at:before, .ion-backspace:before, .ion-backspace-outline:before, .ion-bag:before, .ion-battery-charging:before, .ion-battery-empty:before, .ion-battery-full:before, .ion-battery-half:before, .ion-battery-low:before, .ion-beaker:before, .ion-beer:before, .ion-bluetooth:before, .ion-bonfire:before, .ion-bookmark:before, .ion-bowtie:before, .ion-briefcase:before, .ion-bug:before, .ion-calculator:before, .ion-calendar:before, .ion-camera:before, .ion-card:before, .ion-cash:before, .ion-chatbox:before, .ion-chatbox-working:before, .ion-chatboxes:before, .ion-chatbubble:before, .ion-chatbubble-working:before, .ion-chatbubbles:before, .ion-checkmark:before, .ion-checkmark-circled:before, .ion-checkmark-round:before, .ion-chevron-down:before, .ion-chevron-left:before, .ion-chevron-right:before, .ion-chevron-up:before, .ion-clipboard:before, .ion-clock:before, .ion-close:before, .ion-close-circled:before, .ion-close-round:before, .ion-closed-captioning:before, .ion-cloud:before, .ion-code:before, .ion-code-download:before, .ion-code-working:before, .ion-coffee:before, .ion-compass:before, .ion-compose:before, .ion-connection-bars:before, .ion-contrast:before, .ion-crop:before, .ion-cube:before, .ion-disc:before, .ion-document:before, .ion-document-text:before, .ion-drag:before, .ion-earth:before, .ion-easel:before, .ion-edit:before, .ion-egg:before, .ion-eject:before, .ion-email:before, .ion-email-unread:before, .ion-erlenmeyer-flask:before, .ion-erlenmeyer-flask-bubbles:before, .ion-eye:before, .ion-eye-disabled:before, .ion-female:before, .ion-filing:before, .ion-film-marker:before, .ion-fireball:before, .ion-flag:before, .ion-flame:before, .ion-flash:before, .ion-flash-off:before, .ion-folder:before, .ion-fork:before, .ion-fork-repo:before, .ion-forward:before, .ion-funnel:before, .ion-gear-a:before, .ion-gear-b:before, .ion-grid:before, .ion-hammer:before, .ion-happy:before, .ion-happy-outline:before, .ion-headphone:before, .ion-heart:before, .ion-heart-broken:before, .ion-help:before, .ion-help-buoy:before, .ion-help-circled:before, .ion-home:before, .ion-icecream:before, .ion-image:before, .ion-images:before, .ion-information:before, .ion-information-circled:before, .ion-ionic:before, .ion-ios-alarm:before, .ion-ios-alarm-outline:before, .ion-ios-albums:before, .ion-ios-albums-outline:before, .ion-ios-americanfootball:before, .ion-ios-americanfootball-outline:before, .ion-ios-analytics:before, .ion-ios-analytics-outline:before, .ion-ios-arrow-back:before, .ion-ios-arrow-down:before, .ion-ios-arrow-forward:before, .ion-ios-arrow-left:before, .ion-ios-arrow-right:before, .ion-ios-arrow-thin-down:before, .ion-ios-arrow-thin-left:before, .ion-ios-arrow-thin-right:before, .ion-ios-arrow-thin-up:before, .ion-ios-arrow-up:before, .ion-ios-at:before, .ion-ios-at-outline:before, .ion-ios-barcode:before, .ion-ios-barcode-outline:before, .ion-ios-baseball:before, .ion-ios-baseball-outline:before, .ion-ios-basketball:before, .ion-ios-basketball-outline:before, .ion-ios-bell:before, .ion-ios-bell-outline:before, .ion-ios-body:before, .ion-ios-body-outline:before, .ion-ios-bolt:before, .ion-ios-bolt-outline:before, .ion-ios-book:before, .ion-ios-book-outline:before, .ion-ios-bookmarks:before, .ion-ios-bookmarks-outline:before, .ion-ios-box:before, .ion-ios-box-outline:before, .ion-ios-briefcase:before, .ion-ios-briefcase-outline:before, .ion-ios-browsers:before, .ion-ios-browsers-outline:before, .ion-ios-calculator:before, .ion-ios-calculator-outline:before, .ion-ios-calendar:before, .ion-ios-calendar-outline:before, .ion-ios-camera:before, .ion-ios-camera-outline:before, .ion-ios-cart:before, .ion-ios-cart-outline:before, .ion-ios-chatboxes:before, .ion-ios-chatboxes-outline:before, .ion-ios-chatbubble:before, .ion-ios-chatbubble-outline:before, .ion-ios-checkmark:before, .ion-ios-checkmark-empty:before, .ion-ios-checkmark-outline:before, .ion-ios-circle-filled:before, .ion-ios-circle-outline:before, .ion-ios-clock:before, .ion-ios-clock-outline:before, .ion-ios-close:before, .ion-ios-close-empty:before, .ion-ios-close-outline:before, .ion-ios-cloud:before, .ion-ios-cloud-download:before, .ion-ios-cloud-download-outline:before, .ion-ios-cloud-outline:before, .ion-ios-cloud-upload:before, .ion-ios-cloud-upload-outline:before, .ion-ios-cloudy:before, .ion-ios-cloudy-night:before, .ion-ios-cloudy-night-outline:before, .ion-ios-cloudy-outline:before, .ion-ios-cog:before, .ion-ios-cog-outline:before, .ion-ios-color-filter:before, .ion-ios-color-filter-outline:before, .ion-ios-color-wand:before, .ion-ios-color-wand-outline:before, .ion-ios-compose:before, .ion-ios-compose-outline:before, .ion-ios-contact:before, .ion-ios-contact-outline:before, .ion-ios-copy:before, .ion-ios-copy-outline:before, .ion-ios-crop:before, .ion-ios-crop-strong:before, .ion-ios-download:before, .ion-ios-download-outline:before, .ion-ios-drag:before, .ion-ios-email:before, .ion-ios-email-outline:before, .ion-ios-eye:before, .ion-ios-eye-outline:before, .ion-ios-fastforward:before, .ion-ios-fastforward-outline:before, .ion-ios-filing:before, .ion-ios-filing-outline:before, .ion-ios-film:before, .ion-ios-film-outline:before, .ion-ios-flag:before, .ion-ios-flag-outline:before, .ion-ios-flame:before, .ion-ios-flame-outline:before, .ion-ios-flask:before, .ion-ios-flask-outline:before, .ion-ios-flower:before, .ion-ios-flower-outline:before, .ion-ios-folder:before, .ion-ios-folder-outline:before, .ion-ios-football:before, .ion-ios-football-outline:before, .ion-ios-game-controller-a:before, .ion-ios-game-controller-a-outline:before, .ion-ios-game-controller-b:before, .ion-ios-game-controller-b-outline:before, .ion-ios-gear:before, .ion-ios-gear-outline:before, .ion-ios-glasses:before, .ion-ios-glasses-outline:before, .ion-ios-grid-view:before, .ion-ios-grid-view-outline:before, .ion-ios-heart:before, .ion-ios-heart-outline:before, .ion-ios-help:before, .ion-ios-help-empty:before, .ion-ios-help-outline:before, .ion-ios-home:before, .ion-ios-home-outline:before, .ion-ios-infinite:before, .ion-ios-infinite-outline:before, .ion-ios-information:before, .ion-ios-information-empty:before, .ion-ios-information-outline:before, .ion-ios-ionic-outline:before, .ion-ios-keypad:before, .ion-ios-keypad-outline:before, .ion-ios-lightbulb:before, .ion-ios-lightbulb-outline:before, .ion-ios-list:before, .ion-ios-list-outline:before, .ion-ios-location:before, .ion-ios-location-outline:before, .ion-ios-locked:before, .ion-ios-locked-outline:before, .ion-ios-loop:before, .ion-ios-loop-strong:before, .ion-ios-medical:before, .ion-ios-medical-outline:before, .ion-ios-medkit:before, .ion-ios-medkit-outline:before, .ion-ios-mic:before, .ion-ios-mic-off:before, .ion-ios-mic-outline:before, .ion-ios-minus:before, .ion-ios-minus-empty:before, .ion-ios-minus-outline:before, .ion-ios-monitor:before, .ion-ios-monitor-outline:before, .ion-ios-moon:before, .ion-ios-moon-outline:before, .ion-ios-more:before, .ion-ios-more-outline:before, .ion-ios-musical-note:before, .ion-ios-musical-notes:before, .ion-ios-navigate:before, .ion-ios-navigate-outline:before, .ion-ios-nutrition:before, .ion-ios-nutrition-outline:before, .ion-ios-paper:before, .ion-ios-paper-outline:before, .ion-ios-paperplane:before, .ion-ios-paperplane-outline:before, .ion-ios-partlysunny:before, .ion-ios-partlysunny-outline:before, .ion-ios-pause:before, .ion-ios-pause-outline:before, .ion-ios-paw:before, .ion-ios-paw-outline:before, .ion-ios-people:before, .ion-ios-people-outline:before, .ion-ios-person:before, .ion-ios-person-outline:before, .ion-ios-personadd:before, .ion-ios-personadd-outline:before, .ion-ios-photos:before, .ion-ios-photos-outline:before, .ion-ios-pie:before, .ion-ios-pie-outline:before, .ion-ios-pint:before, .ion-ios-pint-outline:before, .ion-ios-play:before, .ion-ios-play-outline:before, .ion-ios-plus:before, .ion-ios-plus-empty:before, .ion-ios-plus-outline:before, .ion-ios-pricetag:before, .ion-ios-pricetag-outline:before, .ion-ios-pricetags:before, .ion-ios-pricetags-outline:before, .ion-ios-printer:before, .ion-ios-printer-outline:before, .ion-ios-pulse:before, .ion-ios-pulse-strong:before, .ion-ios-rainy:before, .ion-ios-rainy-outline:before, .ion-ios-recording:before, .ion-ios-recording-outline:before, .ion-ios-redo:before, .ion-ios-redo-outline:before, .ion-ios-refresh:before, .ion-ios-refresh-empty:before, .ion-ios-refresh-outline:before, .ion-ios-reload:before, .ion-ios-reverse-camera:before, .ion-ios-reverse-camera-outline:before, .ion-ios-rewind:before, .ion-ios-rewind-outline:before, .ion-ios-rose:before, .ion-ios-rose-outline:before, .ion-ios-search:before, .ion-ios-search-strong:before, .ion-ios-settings:before, .ion-ios-settings-strong:before, .ion-ios-shuffle:before, .ion-ios-shuffle-strong:before, .ion-ios-skipbackward:before, .ion-ios-skipbackward-outline:before, .ion-ios-skipforward:before, .ion-ios-skipforward-outline:before, .ion-ios-snowy:before, .ion-ios-speedometer:before, .ion-ios-speedometer-outline:before, .ion-ios-star:before, .ion-ios-star-half:before, .ion-ios-star-outline:before, .ion-ios-stopwatch:before, .ion-ios-stopwatch-outline:before, .ion-ios-sunny:before, .ion-ios-sunny-outline:before, .ion-ios-telephone:before, .ion-ios-telephone-outline:before, .ion-ios-tennisball:before, .ion-ios-tennisball-outline:before, .ion-ios-thunderstorm:before, .ion-ios-thunderstorm-outline:before, .ion-ios-time:before, .ion-ios-time-outline:before, .ion-ios-timer:before, .ion-ios-timer-outline:before, .ion-ios-toggle:before, .ion-ios-toggle-outline:before, .ion-ios-trash:before, .ion-ios-trash-outline:before, .ion-ios-undo:before, .ion-ios-undo-outline:before, .ion-ios-unlocked:before, .ion-ios-unlocked-outline:before, .ion-ios-upload:before, .ion-ios-upload-outline:before, .ion-ios-videocam:before, .ion-ios-videocam-outline:before, .ion-ios-volume-high:before, .ion-ios-volume-low:before, .ion-ios-wineglass:before, .ion-ios-wineglass-outline:before, .ion-ios-world:before, .ion-ios-world-outline:before, .ion-ipad:before, .ion-iphone:before, .ion-ipod:before, .ion-jet:before, .ion-key:before, .ion-knife:before, .ion-laptop:before, .ion-leaf:before, .ion-levels:before, .ion-lightbulb:before, .ion-link:before, .ion-load-a:before, .ion-load-b:before, .ion-load-c:before, .ion-load-d:before, .ion-location:before, .ion-lock-combination:before, .ion-locked:before, .ion-log-in:before, .ion-log-out:before, .ion-loop:before, .ion-magnet:before, .ion-male:before, .ion-man:before, .ion-map:before, .ion-medkit:before, .ion-merge:before, .ion-mic-a:before, .ion-mic-b:before, .ion-mic-c:before, .ion-minus:before, .ion-minus-circled:before, .ion-minus-round:before, .ion-model-s:before, .ion-monitor:before, .ion-more:before, .ion-mouse:before, .ion-music-note:before, .ion-navicon:before, .ion-navicon-round:before, .ion-navigate:before, .ion-network:before, .ion-no-smoking:before, .ion-nuclear:before, .ion-outlet:before, .ion-paintbrush:before, .ion-paintbucket:before, .ion-paper-airplane:before, .ion-paperclip:before, .ion-pause:before, .ion-person:before, .ion-person-add:before, .ion-person-stalker:before, .ion-pie-graph:before, .ion-pin:before, .ion-pinpoint:before, .ion-pizza:before, .ion-plane:before, .ion-planet:before, .ion-play:before, .ion-playstation:before, .ion-plus:before, .ion-plus-circled:before, .ion-plus-round:before, .ion-podium:before, .ion-pound:before, .ion-power:before, .ion-pricetag:before, .ion-pricetags:before, .ion-printer:before, .ion-pull-request:before, .ion-qr-scanner:before, .ion-quote:before, .ion-radio-waves:before, .ion-record:before, .ion-refresh:before, .ion-reply:before, .ion-reply-all:before, .ion-ribbon-a:before, .ion-ribbon-b:before, .ion-sad:before, .ion-sad-outline:before, .ion-scissors:before, .ion-search:before, .ion-settings:before, .ion-share:before, .ion-shuffle:before, .ion-skip-backward:before, .ion-skip-forward:before, .ion-social-android:before, .ion-social-android-outline:before, .ion-social-angular:before, .ion-social-angular-outline:before, .ion-social-apple:before, .ion-social-apple-outline:before, .ion-social-bitcoin:before, .ion-social-bitcoin-outline:before, .ion-social-buffer:before, .ion-social-buffer-outline:before, .ion-social-chrome:before, .ion-social-chrome-outline:before, .ion-social-codepen:before, .ion-social-codepen-outline:before, .ion-social-css3:before, .ion-social-css3-outline:before, .ion-social-designernews:before, .ion-social-designernews-outline:before, .ion-social-dribbble:before, .ion-social-dribbble-outline:before, .ion-social-dropbox:before, .ion-social-dropbox-outline:before, .ion-social-euro:before, .ion-social-euro-outline:before, .ion-social-facebook:before, .ion-social-facebook-outline:before, .ion-social-foursquare:before, .ion-social-foursquare-outline:before, .ion-social-freebsd-devil:before, .ion-social-github:before, .ion-social-github-outline:before, .ion-social-google:before, .ion-social-google-outline:before, .ion-social-googleplus:before, .ion-social-googleplus-outline:before, .ion-social-hackernews:before, .ion-social-hackernews-outline:before, .ion-social-html5:before, .ion-social-html5-outline:before, .ion-social-instagram:before, .ion-social-instagram-outline:before, .ion-social-javascript:before, .ion-social-javascript-outline:before, .ion-social-linkedin:before, .ion-social-linkedin-outline:before, .ion-social-markdown:before, .ion-social-nodejs:before, .ion-social-octocat:before, .ion-social-pinterest:before, .ion-social-pinterest-outline:before, .ion-social-python:before, .ion-social-reddit:before, .ion-social-reddit-outline:before, .ion-social-rss:before, .ion-social-rss-outline:before, .ion-social-sass:before, .ion-social-skype:before, .ion-social-skype-outline:before, .ion-social-snapchat:before, .ion-social-snapchat-outline:before, .ion-social-tumblr:before, .ion-social-tumblr-outline:before, .ion-social-tux:before, .ion-social-twitch:before, .ion-social-twitch-outline:before, .ion-social-twitter:before, .ion-social-twitter-outline:before, .ion-social-usd:before, .ion-social-usd-outline:before, .ion-social-vimeo:before, .ion-social-vimeo-outline:before, .ion-social-whatsapp:before, .ion-social-whatsapp-outline:before, .ion-social-windows:before, .ion-social-windows-outline:before, .ion-social-wordpress:before, .ion-social-wordpress-outline:before, .ion-social-yahoo:before, .ion-social-yahoo-outline:before, .ion-social-yen:before, .ion-social-yen-outline:before, .ion-social-youtube:before, .ion-social-youtube-outline:before, .ion-soup-can:before, .ion-soup-can-outline:before, .ion-speakerphone:before, .ion-speedometer:before, .ion-spoon:before, .ion-star:before, .ion-stats-bars:before, .ion-steam:before, .ion-stop:before, .ion-thermometer:before, .ion-thumbsdown:before, .ion-thumbsup:before, .ion-toggle:before, .ion-toggle-filled:before, .ion-transgender:before, .ion-trash-a:before, .ion-trash-b:before, .ion-trophy:before, .ion-tshirt:before, .ion-tshirt-outline:before, .ion-umbrella:before, .ion-university:before, .ion-unlocked:before, .ion-upload:before, .ion-usb:before, .ion-videocamera:before, .ion-volume-high:before, .ion-volume-low:before, .ion-volume-medium:before, .ion-volume-mute:before, .ion-wand:before, .ion-waterdrop:before, .ion-wifi:before, .ion-wineglass:before, .ion-woman:before, .ion-wrench:before, .ion-xbox:before { display: inline-block; font-family: "Ionicons"; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; text-rendering: auto; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
+.ion, .ionicons, .ion-alert:before, .ion-alert-circled:before, .ion-android-add:before, .ion-android-add-circle:before, .ion-android-alarm-clock:before, .ion-android-alert:before, .ion-android-apps:before, .ion-android-archive:before, .ion-android-arrow-back:before, .ion-android-arrow-down:before, .ion-android-arrow-dropdown:before, .ion-android-arrow-dropdown-circle:before, .ion-android-arrow-dropleft:before, .ion-android-arrow-dropleft-circle:before, .ion-android-arrow-dropright:before, .ion-android-arrow-dropright-circle:before, .ion-android-arrow-dropup:before, .ion-android-arrow-dropup-circle:before, .ion-android-arrow-forward:before, .ion-android-arrow-up:before, .ion-android-attach:before, .ion-android-bar:before, .ion-android-bicycle:before, .ion-android-boat:before, .ion-android-bookmark:before, .ion-android-bulb:before, .ion-android-bus:before, .ion-android-calendar:before, .ion-android-call:before, .ion-android-camera:before, .ion-android-cancel:before, .ion-android-car:before, .ion-android-cart:before, .ion-android-chat:before, .ion-android-checkbox:before, .ion-android-checkbox-blank:before, .ion-android-checkbox-outline:before, .ion-android-checkbox-outline-blank:before, .ion-android-checkmark-circle:before, .ion-android-clipboard:before, .ion-android-close:before, .ion-android-cloud:before, .ion-android-cloud-circle:before, .ion-android-cloud-done:before, .ion-android-cloud-outline:before, .ion-android-color-palette:before, .ion-android-compass:before, .ion-android-contact:before, .ion-android-contacts:before, .ion-android-contract:before, .ion-android-create:before, .ion-android-delete:before, .ion-android-desktop:before, .ion-android-document:before, .ion-android-done:before, .ion-android-done-all:before, .ion-android-download:before, .ion-android-drafts:before, .ion-android-exit:before, .ion-android-expand:before, .ion-android-favorite:before, .ion-android-favorite-outline:before, .ion-android-film:before, .ion-android-folder:before, .ion-android-folder-open:before, .ion-android-funnel:before, .ion-android-globe:before, .ion-android-hand:before, .ion-android-hangout:before, .ion-android-happy:before, .ion-android-home:before, .ion-android-image:before, .ion-android-laptop:before, .ion-android-list:before, .ion-android-locate:before, .ion-android-lock:before, .ion-android-mail:before, .ion-android-map:before, .ion-android-menu:before, .ion-android-microphone:before, .ion-android-microphone-off:before, .ion-android-more-horizontal:before, .ion-android-more-vertical:before, .ion-android-navigate:before, .ion-android-notifications:before, .ion-android-notifications-none:before, .ion-android-notifications-off:before, .ion-android-open:before, .ion-android-options:before, .ion-android-people:before, .ion-android-person:before, .ion-android-person-add:before, .ion-android-phone-landscape:before, .ion-android-phone-portrait:before, .ion-android-pin:before, .ion-android-plane:before, .ion-android-playstore:before, .ion-android-print:before, .ion-android-radio-button-off:before, .ion-android-radio-button-on:before, .ion-android-refresh:before, .ion-android-remove:before, .ion-android-remove-circle:before, .ion-android-restaurant:before, .ion-android-sad:before, .ion-android-search:before, .ion-android-send:before, .ion-android-settings:before, .ion-android-share:before, .ion-android-share-alt:before, .ion-android-star:before, .ion-android-star-half:before, .ion-android-star-outline:before, .ion-android-stopwatch:before, .ion-android-subway:before, .ion-android-sunny:before, .ion-android-sync:before, .ion-android-textsms:before, .ion-android-time:before, .ion-android-train:before, .ion-android-unlock:before, .ion-android-upload:before, .ion-android-volume-down:before, .ion-android-volume-mute:before, .ion-android-volume-off:before, .ion-android-volume-up:before, .ion-android-walk:before, .ion-android-warning:before, .ion-android-watch:before, .ion-android-wifi:before, .ion-aperture:before, .ion-archive:before, .ion-arrow-down-a:before, .ion-arrow-down-b:before, .ion-arrow-down-c:before, .ion-arrow-expand:before, .ion-arrow-graph-down-left:before, .ion-arrow-graph-down-right:before, .ion-arrow-graph-up-left:before, .ion-arrow-graph-up-right:before, .ion-arrow-left-a:before, .ion-arrow-left-b:before, .ion-arrow-left-c:before, .ion-arrow-move:before, .ion-arrow-resize:before, .ion-arrow-return-left:before, .ion-arrow-return-right:before, .ion-arrow-right-a:before, .ion-arrow-right-b:before, .ion-arrow-right-c:before, .ion-arrow-shrink:before, .ion-arrow-swap:before, .ion-arrow-up-a:before, .ion-arrow-up-b:before, .ion-arrow-up-c:before, .ion-asterisk:before, .ion-at:before, .ion-backspace:before, .ion-backspace-outline:before, .ion-bag:before, .ion-battery-charging:before, .ion-battery-empty:before, .ion-battery-full:before, .ion-battery-half:before, .ion-battery-low:before, .ion-beaker:before, .ion-beer:before, .ion-bluetooth:before, .ion-bonfire:before, .ion-bookmark:before, .ion-bowtie:before, .ion-briefcase:before, .ion-bug:before, .ion-calculator:before, .ion-calendar:before, .ion-camera:before, .ion-card:before, .ion-cash:before, .ion-chatbox:before, .ion-chatbox-working:before, .ion-chatboxes:before, .ion-chatbubble:before, .ion-chatbubble-working:before, .ion-chatbubbles:before, .ion-checkmark:before, .ion-checkmark-circled:before, .ion-checkmark-round:before, .ion-chevron-down:before, .ion-chevron-left:before, .ion-chevron-right:before, .ion-chevron-up:before, .ion-clipboard:before, .ion-clock:before, .ion-close:before, .ion-close-circled:before, .ion-close-round:before, .ion-closed-captioning:before, .ion-cloud:before, .ion-code:before, .ion-code-download:before, .ion-code-working:before, .ion-coffee:before, .ion-compass:before, .ion-compose:before, .ion-connection-bars:before, .ion-contrast:before, .ion-crop:before, .ion-cube:before, .ion-disc:before, .ion-document:before, .ion-document-text:before, .ion-drag:before, .ion-earth:before, .ion-easel:before, .ion-edit:before, .ion-egg:before, .ion-eject:before, .ion-email:before, .ion-email-unread:before, .ion-erlenmeyer-flask:before, .ion-erlenmeyer-flask-bubbles:before, .ion-eye:before, .ion-eye-disabled:before, .ion-female:before, .ion-filing:before, .ion-film-marker:before, .ion-fireball:before, .ion-flag:before, .ion-flame:before, .ion-flash:before, .ion-flash-off:before, .ion-folder:before, .ion-fork:before, .ion-fork-repo:before, .ion-forward:before, .ion-funnel:before, .ion-gear-a:before, .ion-gear-b:before, .ion-grid:before, .ion-hammer:before, .ion-happy:before, .ion-happy-outline:before, .ion-headphone:before, .ion-heart:before, .ion-heart-broken:before, .ion-help:before, .ion-help-buoy:before, .ion-help-circled:before, .ion-home:before, .ion-icecream:before, .ion-image:before, .ion-images:before, .ion-information:before, .ion-information-circled:before, .ion-ionic:before, .ion-ios-alarm:before, .ion-ios-alarm-outline:before, .ion-ios-albums:before, .ion-ios-albums-outline:before, .ion-ios-americanfootball:before, .ion-ios-americanfootball-outline:before, .ion-ios-analytics:before, .ion-ios-analytics-outline:before, .ion-ios-arrow-back:before, .ion-ios-arrow-down:before, .ion-ios-arrow-forward:before, .ion-ios-arrow-left:before, .ion-ios-arrow-right:before, .ion-ios-arrow-thin-down:before, .ion-ios-arrow-thin-left:before, .ion-ios-arrow-thin-right:before, .ion-ios-arrow-thin-up:before, .ion-ios-arrow-up:before, .ion-ios-at:before, .ion-ios-at-outline:before, .ion-ios-barcode:before, .ion-ios-barcode-outline:before, .ion-ios-baseball:before, .ion-ios-baseball-outline:before, .ion-ios-basketball:before, .ion-ios-basketball-outline:before, .ion-ios-bell:before, .ion-ios-bell-outline:before, .ion-ios-body:before, .ion-ios-body-outline:before, .ion-ios-bolt:before, .ion-ios-bolt-outline:before, .ion-ios-book:before, .ion-ios-book-outline:before, .ion-ios-bookmarks:before, .ion-ios-bookmarks-outline:before, .ion-ios-box:before, .ion-ios-box-outline:before, .ion-ios-briefcase:before, .ion-ios-briefcase-outline:before, .ion-ios-browsers:before, .ion-ios-browsers-outline:before, .ion-ios-calculator:before, .ion-ios-calculator-outline:before, .ion-ios-calendar:before, .ion-ios-calendar-outline:before, .ion-ios-camera:before, .ion-ios-camera-outline:before, .ion-ios-cart:before, .ion-ios-cart-outline:before, .ion-ios-chatboxes:before, .ion-ios-chatboxes-outline:before, .ion-ios-chatbubble:before, .ion-ios-chatbubble-outline:before, .ion-ios-checkmark:before, .ion-ios-checkmark-empty:before, .ion-ios-checkmark-outline:before, .ion-ios-circle-filled:before, .ion-ios-circle-outline:before, .ion-ios-clock:before, .ion-ios-clock-outline:before, .ion-ios-close:before, .ion-ios-close-empty:before, .ion-ios-close-outline:before, .ion-ios-cloud:before, .ion-ios-cloud-download:before, .ion-ios-cloud-download-outline:before, .ion-ios-cloud-outline:before, .ion-ios-cloud-upload:before, .ion-ios-cloud-upload-outline:before, .ion-ios-cloudy:before, .ion-ios-cloudy-night:before, .ion-ios-cloudy-night-outline:before, .ion-ios-cloudy-outline:before, .ion-ios-cog:before, .ion-ios-cog-outline:before, .ion-ios-color-filter:before, .ion-ios-color-filter-outline:before, .ion-ios-color-wand:before, .ion-ios-color-wand-outline:before, .ion-ios-compose:before, .ion-ios-compose-outline:before, .ion-ios-contact:before, .ion-ios-contact-outline:before, .ion-ios-copy:before, .ion-ios-copy-outline:before, .ion-ios-crop:before, .ion-ios-crop-strong:before, .ion-ios-download:before, .ion-ios-download-outline:before, .ion-ios-drag:before, .ion-ios-email:before, .ion-ios-email-outline:before, .ion-ios-eye:before, .ion-ios-eye-outline:before, .ion-ios-fastforward:before, .ion-ios-fastforward-outline:before, .ion-ios-filing:before, .ion-ios-filing-outline:before, .ion-ios-film:before, .ion-ios-film-outline:before, .ion-ios-flag:before, .ion-ios-flag-outline:before, .ion-ios-flame:before, .ion-ios-flame-outline:before, .ion-ios-flask:before, .ion-ios-flask-outline:before, .ion-ios-flower:before, .ion-ios-flower-outline:before, .ion-ios-folder:before, .ion-ios-folder-outline:before, .ion-ios-football:before, .ion-ios-football-outline:before, .ion-ios-game-controller-a:before, .ion-ios-game-controller-a-outline:before, .ion-ios-game-controller-b:before, .ion-ios-game-controller-b-outline:before, .ion-ios-gear:before, .ion-ios-gear-outline:before, .ion-ios-glasses:before, .ion-ios-glasses-outline:before, .ion-ios-grid-view:before, .ion-ios-grid-view-outline:before, .ion-ios-heart:before, .ion-ios-heart-outline:before, .ion-ios-help:before, .ion-ios-help-empty:before, .ion-ios-help-outline:before, .ion-ios-home:before, .ion-ios-home-outline:before, .ion-ios-infinite:before, .ion-ios-infinite-outline:before, .ion-ios-information:before, .ion-ios-information-empty:before, .ion-ios-information-outline:before, .ion-ios-ionic-outline:before, .ion-ios-keypad:before, .ion-ios-keypad-outline:before, .ion-ios-lightbulb:before, .ion-ios-lightbulb-outline:before, .ion-ios-list:before, .ion-ios-list-outline:before, .ion-ios-location:before, .ion-ios-location-outline:before, .ion-ios-locked:before, .ion-ios-locked-outline:before, .ion-ios-loop:before, .ion-ios-loop-strong:before, .ion-ios-medical:before, .ion-ios-medical-outline:before, .ion-ios-medkit:before, .ion-ios-medkit-outline:before, .ion-ios-mic:before, .ion-ios-mic-off:before, .ion-ios-mic-outline:before, .ion-ios-minus:before, .ion-ios-minus-empty:before, .ion-ios-minus-outline:before, .ion-ios-monitor:before, .ion-ios-monitor-outline:before, .ion-ios-moon:before, .ion-ios-moon-outline:before, .ion-ios-more:before, .ion-ios-more-outline:before, .ion-ios-musical-note:before, .ion-ios-musical-notes:before, .ion-ios-navigate:before, .ion-ios-navigate-outline:before, .ion-ios-nutrition:before, .ion-ios-nutrition-outline:before, .ion-ios-paper:before, .ion-ios-paper-outline:before, .ion-ios-paperplane:before, .ion-ios-paperplane-outline:before, .ion-ios-partlysunny:before, .ion-ios-partlysunny-outline:before, .ion-ios-pause:before, .ion-ios-pause-outline:before, .ion-ios-paw:before, .ion-ios-paw-outline:before, .ion-ios-people:before, .ion-ios-people-outline:before, .ion-ios-person:before, .ion-ios-person-outline:before, .ion-ios-personadd:before, .ion-ios-personadd-outline:before, .ion-ios-photos:before, .ion-ios-photos-outline:before, .ion-ios-pie:before, .ion-ios-pie-outline:before, .ion-ios-pint:before, .ion-ios-pint-outline:before, .ion-ios-play:before, .ion-ios-play-outline:before, .ion-ios-plus:before, .ion-ios-plus-empty:before, .ion-ios-plus-outline:before, .ion-ios-pricetag:before, .ion-ios-pricetag-outline:before, .ion-ios-pricetags:before, .ion-ios-pricetags-outline:before, .ion-ios-printer:before, .ion-ios-printer-outline:before, .ion-ios-pulse:before, .ion-ios-pulse-strong:before, .ion-ios-rainy:before, .ion-ios-rainy-outline:before, .ion-ios-recording:before, .ion-ios-recording-outline:before, .ion-ios-redo:before, .ion-ios-redo-outline:before, .ion-ios-refresh:before, .ion-ios-refresh-empty:before, .ion-ios-refresh-outline:before, .ion-ios-reload:before, .ion-ios-reverse-camera:before, .ion-ios-reverse-camera-outline:before, .ion-ios-rewind:before, .ion-ios-rewind-outline:before, .ion-ios-rose:before, .ion-ios-rose-outline:before, .ion-ios-search:before, .ion-ios-search-strong:before, .ion-ios-settings:before, .ion-ios-settings-strong:before, .ion-ios-shuffle:before, .ion-ios-shuffle-strong:before, .ion-ios-skipbackward:before, .ion-ios-skipbackward-outline:before, .ion-ios-skipforward:before, .ion-ios-skipforward-outline:before, .ion-ios-snowy:before, .ion-ios-speedometer:before, .ion-ios-speedometer-outline:before, .ion-ios-star:before, .ion-ios-star-half:before, .ion-ios-star-outline:before, .ion-ios-stopwatch:before, .ion-ios-stopwatch-outline:before, .ion-ios-sunny:before, .ion-ios-sunny-outline:before, .ion-ios-telephone:before, .ion-ios-telephone-outline:before, .ion-ios-tennisball:before, .ion-ios-tennisball-outline:before, .ion-ios-thunderstorm:before, .ion-ios-thunderstorm-outline:before, .ion-ios-time:before, .ion-ios-time-outline:before, .ion-ios-timer:before, .ion-ios-timer-outline:before, .ion-ios-toggle:before, .ion-ios-toggle-outline:before, .ion-ios-trash:before, .ion-ios-trash-outline:before, .ion-ios-undo:before, .ion-ios-undo-outline:before, .ion-ios-unlocked:before, .ion-ios-unlocked-outline:before, .ion-ios-upload:before, .ion-ios-upload-outline:before, .ion-ios-videocam:before, .ion-ios-videocam-outline:before, .ion-ios-volume-high:before, .ion-ios-volume-low:before, .ion-ios-wineglass:before, .ion-ios-wineglass-outline:before, .ion-ios-world:before, .ion-ios-world-outline:before, .ion-ipad:before, .ion-iphone:before, .ion-ipod:before, .ion-jet:before, .ion-key:before, .ion-knife:before, .ion-laptop:before, .ion-leaf:before, .ion-levels:before, .ion-lightbulb:before, .ion-link:before, .ion-load-a:before, .ion-load-b:before, .ion-load-c:before, .ion-load-d:before, .ion-location:before, .ion-lock-combination:before, .ion-locked:before, .ion-log-in:before, .ion-log-out:before, .ion-loop:before, .ion-magnet:before, .ion-male:before, .ion-man:before, .ion-map:before, .ion-medkit:before, .ion-merge:before, .ion-mic-a:before, .ion-mic-b:before, .ion-mic-c:before, .ion-minus:before, .ion-minus-circled:before, .ion-minus-round:before, .ion-model-s:before, .ion-monitor:before, .ion-more:before, .ion-mouse:before, .ion-music-note:before, .ion-navicon:before, .ion-navicon-round:before, .ion-navigate:before, .ion-network:before, .ion-no-smoking:before, .ion-nuclear:before, .ion-outlet:before, .ion-paintbrush:before, .ion-paintbucket:before, .ion-paper-airplane:before, .ion-paperclip:before, .ion-pause:before, .ion-person:before, .ion-person-add:before, .ion-person-stalker:before, .ion-pie-graph:before, .ion-pin:before, .ion-pinpoint:before, .ion-pizza:before, .ion-plane:before, .ion-planet:before, .ion-play:before, .ion-playstation:before, .ion-plus:before, .ion-plus-circled:before, .ion-plus-round:before, .ion-podium:before, .ion-pound:before, .ion-power:before, .ion-pricetag:before, .ion-pricetags:before, .ion-printer:before, .ion-pull-request:before, .ion-qr-scanner:before, .ion-quote:before, .ion-radio-waves:before, .ion-record:before, .ion-refresh:before, .ion-reply:before, .ion-reply-all:before, .ion-ribbon-a:before, .ion-ribbon-b:before, .ion-sad:before, .ion-sad-outline:before, .ion-scissors:before, .ion-search:before, .ion-settings:before, .ion-share:before, .ion-shuffle:before, .ion-skip-backward:before, .ion-skip-forward:before, .ion-social-android:before, .ion-social-android-outline:before, .ion-social-angular:before, .ion-social-angular-outline:before, .ion-social-apple:before, .ion-social-apple-outline:before, .ion-social-bitcoin:before, .ion-social-bitcoin-outline:before, .ion-social-buffer:before, .ion-social-buffer-outline:before, .ion-social-chrome:before, .ion-social-chrome-outline:before, .ion-social-codepen:before, .ion-social-codepen-outline:before, .ion-social-css3:before, .ion-social-css3-outline:before, .ion-social-designernews:before, .ion-social-designernews-outline:before, .ion-social-dribbble:before, .ion-social-dribbble-outline:before, .ion-social-dropbox:before, .ion-social-dropbox-outline:before, .ion-social-euro:before, .ion-social-euro-outline:before, .ion-social-facebook:before, .ion-social-facebook-outline:before, .ion-social-foursquare:before, .ion-social-foursquare-outline:before, .ion-social-freebsd-devil:before, .ion-social-github:before, .ion-social-github-outline:before, .ion-social-google:before, .ion-social-google-outline:before, .ion-social-googleplus:before, .ion-social-googleplus-outline:before, .ion-social-hackernews:before, .ion-social-hackernews-outline:before, .ion-social-html5:before, .ion-social-html5-outline:before, .ion-social-instagram:before, .ion-social-instagram-outline:before, .ion-social-javascript:before, .ion-social-javascript-outline:before, .ion-social-linkedin:before, .ion-social-linkedin-outline:before, .ion-social-markdown:before, .ion-social-nodejs:before, .ion-social-octocat:before, .ion-social-pinterest:before, .ion-social-pinterest-outline:before, .ion-social-python:before, .ion-social-reddit:before, .ion-social-reddit-outline:before, .ion-social-rss:before, .ion-social-rss-outline:before, .ion-social-sass:before, .ion-social-skype:before, .ion-social-skype-outline:before, .ion-social-snapchat:before, .ion-social-snapchat-outline:before, .ion-social-tumblr:before, .ion-social-tumblr-outline:before, .ion-social-tux:before, .ion-social-twitch:before, .ion-social-twitch-outline:before, .ion-social-twitter:before, .ion-social-twitter-outline:before, .ion-social-usd:before, .ion-social-usd-outline:before, .ion-social-vimeo:before, .ion-social-vimeo-outline:before, .ion-social-whatsapp:before, .ion-social-whatsapp-outline:before, .ion-social-windows:before, .ion-social-windows-outline:before, .ion-social-wordpress:before, .ion-social-wordpress-outline:before, .ion-social-yahoo:before, .ion-social-yahoo-outline:before, .ion-social-yen:before, .ion-social-yen-outline:before, .ion-social-youtube:before, .ion-social-youtube-outline:before, .ion-soup-can:before, .ion-soup-can-outline:before, .ion-speakerphone:before, .ion-speedometer:before, .ion-spoon:before, .ion-star:before, .ion-stats-bars:before, .ion-steam:before, .ion-stop:before, .ion-thermometer:before, .ion-thumbsdown:before, .ion-thumbsup:before, .ion-toggle:before, .ion-toggle-filled:before, .ion-transgender:before, .ion-trash-a:before, .ion-trash-b:before, .ion-trophy:before, .ion-tshirt:before, .ion-tshirt-outline:before, .ion-umbrella:before, .ion-university:before, .ion-unlocked:before, .ion-upload:before, .ion-usb:before, .ion-videocamera:before, .ion-volume-high:before, .ion-volume-low:before, .ion-volume-medium:before, .ion-volume-mute:before, .ion-wand:before, .ion-waterdrop:before, .ion-wifi:before, .ion-wineglass:before, .ion-woman:before, .ion-wrench:before, .ion-xbox:before {
+ display: inline-block;
+ font-family: "Ionicons";
+ speak: none;
+ font-style: normal;
+ font-weight: normal;
+ font-variant: normal;
+ text-transform: none;
+ text-rendering: auto;
+ line-height: 1;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ pointer-events: none;
+}
.ion-alert:before { content: "\f101"; }
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/index.css b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/index.css
index 83b3353a..2130c675 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/index.css
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/index.css
@@ -102,6 +102,19 @@ html.vscroll {
.error_hilite ~ span.err {
display: flex;
}
+.err_heading {
+ display: none;
+}
+.err_heading.error_visible {
+ display: flex;
+ text-align: center;
+ justify-content: center;
+ align-items: center;
+ font-size: 0.875rem;
+ height: 64px;
+ padding: 12px;
+ color: red !important;
+}
span.err {
display: none;
text-align: center;
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/nav.css b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/nav.css
index f555ce99..03e3fb39 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/nav.css
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/nav.css
@@ -2,7 +2,7 @@
/* NAV BAR */
#nav {
- position: absolute;
+ position: fixed;
top: 0; left: 0;
width: 249px;
-webkit-transform: translateZ(0) translateX(-249px);
@@ -10,7 +10,7 @@
background: #fff;
}
#content {
- position: absolute;
+ position: fixed;
top: 0; left: 0;
width: 100%; height: 100%;
overflow: hidden;
@@ -23,6 +23,23 @@
.nav #content {
-webkit-transform: translateZ(0) translateX(249px);
}
+.accessible #nav,
+.accessible #content {
+ position: absolute;
+}
+
+.accessible #nav {
+ width: 100%;
+ -webkit-transform: translateZ(0) translateX(-100%);
+}
+.accessible .nav #nav {
+ width: 100%;
+ -webkit-transform: translateZ(0) translateX(0%);
+}
+.accessible .nav #content {
+ -webkit-transform: translateZ(0) translateX(100%);
+}
+
#nav .logo {
background-image: url(../img/small-logo.png);
background-repeat: no-repeat;
@@ -85,19 +102,62 @@
#nav .social {
position: absolute;
- bottom: 0;
+ top: calc(100vh - 48px);
left: 0;
border-top: 1px solid #ddd;
+ display: flex;
+ flex-direction: row;
}
#nav .social span {
display: block;
- float: left;
width: 61px;
border-left: 1px solid #ddd;
color: #666;
font-size: 1.125rem;
- padding: 5px 0;
+ height: 48px;
text-align: center;
+ justify-content: center;
+ align-items: center;
+ display: flex;
+}
+
+#nav .close {
+ position: absolute;
+ top: 0;
+ right: 0;
+ width: 48px;
+ height: 48px;
+ cursor: pointer;
+ text-align: center;
+ overflow: hidden;
+ -webkit-transition: all ease 200ms;
+ -moz-transition: all ease 200ms;
+ -o-transition: all ease 200ms;
+ transition: all ease 200ms;
+}
+#nav .close:after,
+#nav .close:before {
+ content: "";
+ height: 1px;
+ width: 24px;
+ background: #888;
+ position: absolute;
+ left: 25%;
+ top: 50%;
+}
+#nav .close:before {
+ -webkit-transform: rotate(45deg);
+ -moz-transform: rotate(45deg);
+ -ms-transform: rotate(45deg);
+ -o-transform: rotate(45deg);
+ transform: rotate(45deg);
+}
+#nav .close:after {
+ -webkit-transform: rotate(-45deg);
+ -moz-transform: rotate(-45deg);
+ -ms-transform: rotate(-45deg);
+ -o-transform: rotate(-45deg);
+ transform: rotate(-45deg);
}
#nav-container {
@@ -146,6 +206,9 @@ padding-bottom:0px;
align-items: center;
font-size: 1.063rem;
}
+#intro div span {
+ pointer-events: none;
+}
#intro #compass {
pointer-events: none;
background-image: url(../img/compass-logo.png);
@@ -198,7 +261,8 @@ padding-bottom:0px;
/* HEADER AND FOOTER ON MOST PAGES */
#header {
- display: block;
+ display: flex;
+ justify-content: space-between;
position: absolute;
top: 0; left: 0; width: 100%;
height: 48px;
@@ -216,9 +280,18 @@ padding-bottom:0px;
top:0px;
}
#header .burger {
- display: inline-block;
+ display: flex;
font-size: 24px;
- padding: 12px 13px 7px;
+ width: 48px;
+ height: 48px;
+ padding-top: 4px;
+ box-sizing: border-box;
+ align-items: center;
+ flex-direction: row;
+ justify-content: center;
+}
+#header .burger:before {
+ pointer-events: none;
}
#header .cart_rapper {
@@ -227,7 +300,7 @@ padding-bottom:0px;
align-items: flex-end;
position: relative;
float: right;
- width: 44px; height: 48px;
+ width: 48px; height: 48px;
}
#header .cart {
position: relative;
@@ -238,6 +311,7 @@ padding-bottom:0px;
background-image:url(../img/cart-box.png);
background-size:100%;
background-repeat:no-repeat;
+ pointer-events: none;
}
#header .cart .cart_count {
@@ -268,7 +342,7 @@ padding-bottom:0px;
#footer {
display: block;
- position: absolute;
+ position: fixed;
bottom: 0; left: 0; width: 100%;
background: #fff;
border-top: 1px solid #ddd;
@@ -296,13 +370,16 @@ padding-bottom:0px;
#footer .ok.disabled {
color: #666;
}
+.accessible #footer {
+ position: absolute;
+}
/* CURTAIN FOR LOGIN AND SELECTOR VIEWS */
#curtain {
pointer-events: none;
- position: absolute;
+ position: fixed;
top: 0; left: 0;
width: 100%; height: 100%;
background: rgba(255,255,255,0.8);
@@ -312,6 +389,9 @@ padding-bottom:0px;
-webkit-transform: translateZ(0) translateX(0);
transform: translateZ(0) translateX(0);
}
+.accessible #curtain {
+ position: absolute;
+}
#curtain.visible {
pointer-events: auto;
opacity: 1;
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/vendor/imageviewer.css b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/vendor/imageviewer.css
index af346f08..739c37a1 100644
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/vendor/imageviewer.css
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/css/vendor/imageviewer.css
@@ -22,8 +22,8 @@
}
.iv-close {
- width: 32px;
- height: 32px;
+ width: 48px;
+ height: 48px;
position: fixed;
right: 20px;
top: 20px;
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/index.html b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/index.html
index a422832c..17289033 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/index.html
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/index.html
@@ -16,6 +16,7 @@
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height">
+ <meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="css/fonts/fonts.css">
<link rel="stylesheet" type="text/css" href="css/fonts/ionicons.css">
<link rel="stylesheet" type="text/css" href="css/vendor/flickity.css">
@@ -35,8 +36,9 @@
<div id="nav-row">
<!-- flex -->
- <span role="menu" class="menu">
+ <span role="region" class="menu">
<div class="logo" aria-label="Stone Island"></div>
+ <div class="close" role="button" aria-label="Close menu"></div>
<div role="menu" aria-label="Main Menu" class="main_menu">
<span role="menuitem" class="store">STORE</span>
<span role="menuitem" class="hub">HUB</span>
@@ -89,10 +91,10 @@
</div>
<span class="social" role="list" aria-label="Social Links">
- <span role="menuitem" class="fb ion-social-facebook"></span>
- <span role="menuitem" class="insta ion-social-instagram-outline"></span>
- <span role="menuitem" class="tw ion-social-twitter"></span>
- <span role="menuitem" class="yt ion-social-youtube"></span>
+ <span role="menuitem" aria-label="Follow us on Facebook" class="fb ion-social-facebook"></span>
+ <span role="menuitem" aria-label="Follow us on Instagram" class="insta ion-social-instagram-outline"></span>
+ <span role="menuitem" aria-label="Follow us on Twitter" class="tw ion-social-twitter"></span>
+ <span role="menuitem" aria-label="Follow us on Youtube" class="yt ion-social-youtube"></span>
</span>
</div>
@@ -100,25 +102,25 @@
<div id="intro" role="menu" aria-label="Stone Island Home Screen">
<div id="compass"></div>
- <div role="menuitem" class="store">STORE</div>
- <div role="menuitem" class="hub">HUB</div>
- <div role="menuitem" class="story">STORY</div>
- <div role="menuitem" class="archive">ARCHIVE</div>
+ <div role="menuitem" class="store"><span>STORE</span></div>
+ <div role="menuitem" class="hub"><span>HUB</span></div>
+ <div role="menuitem" class="story"><span>STORY</span></div>
+ <div role="menuitem" class="archive"><span>ARCHIVE</span></div>
<div class="alert"></div>
<span class="latlng" role="note" aria-label="Your Latitude and Longitude">+40&deg; 58' 90.9" N&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;74&deg; 04' 46.3" W</span>
</div>
<div id="header" role="menubar" aria-label="Menu bar">
- <span role="link" aria-label="Show main menu" class="burger ion-android-menu"></span>
- <span role="link" aria-label="Homepage. Stone Island logo" class="logo"></span>
- <span role="link" aria-label="View cart" class="cart_rapper"><span class="cart"><span role="display" class="cart_count">0</span></span></span>
+ <div role="menuitem" aria-label="Show main menu" class="burger ion-android-menu"></div>
+ <div role="menuitem" aria-label="Homepage. Stone Island logo" class="logo"></div>
+ <div role="menuitem" aria-label="View cart" class="cart_rapper"><span class="cart"><span role="display" class="cart_count">0</span></span></div>
</div>
<!-- BLOGS ================================================ -->
<div id="story" role="region" aria-label="Stone Island Story">
<div class="scroll">
- <h1 aria-label="Current section: Stone Island Story">STORY</h1>
+ <h1 role="menuitem" aria-label="Current section: Stone Island Story">STORY</h1>
<img>
<ul class="links"></ul>
<div class="content">
@@ -133,7 +135,7 @@
<div id="hub" role="region" aria-label="Stone Island Hub">
<div class="scroll">
- <h1 aria-label="Current section: Stone Island Hub">HUB</h1>
+ <h1 role="menuitem" aria-label="Current section: Stone Island Hub">HUB</h1>
<div class="content">
<script type="text/html" class="template">
<div class="hub_item" data-id="{{id}}">
@@ -167,14 +169,16 @@
<div class="content">
<script type="text/html" class="template">
- <div class="image" aria-label="{{label}}" style="background-image:url({{image}})"></div>
+ <div class="image" role="img" aria-label="{{label}}" style="background-image:url({{image}})"></div>
<div class="text">
- <h2>
- <b>{{code}}</b><br>
- {{label}}
- </h2>
- <div class="body">
- {{caption}}
+ <div>
+ <h2>
+ <b>{{code}}</b><br>
+ {{label}}
+ </h2>
+ <div class="body">
+ {{caption}}
+ </div>
</div>
</div>
@@ -190,21 +194,21 @@
</div>
</div>
<div class="heading">
- <h1 role="heading" aria-label="Current section: Stone Island Archive">ARCHIVE</h1>
+ <h1 role="menuitem" aria-label="Current section: Stone Island Archive">ARCHIVE</h1>
<div role="heading" class="subtitle" aria-label="1982 to 2015">'982'015</div>
</div>
</div>
<div id="privacy" role="region" aria-label="Privacy Policy" class="page">
<div class="scroll">
- <h1 aria-label="Current section: Privacy Policy">PRIVACY POLICY</h1>
+ <h1 role="menuitem" aria-label="Current section: Privacy Policy">PRIVACY POLICY</h1>
<div class="content"></div>
</div>
</div>
<div id="account_terms" role="region" aria-label="My Account Terms and Conditions of Use" class="page">
<div class="scroll">
- <h1 aria-label="Current section: My Account terms and conditions of use">MY ACCOUNT TERMS AND CONDITIONS OF USE</h1>
+ <h1 role="menuitem" aria-label="Current section: My Account terms and conditions of use">MY ACCOUNT TERMS AND CONDITIONS OF USE</h1>
<div class="content">
<h2>1. Services</h2>
<p>
@@ -260,21 +264,21 @@
<div id="terms" role="region" aria-label="Terms and Conditions" class="page">
<div class="scroll">
- <h1 aria-label="Current section: Terms and conditions">TERMS AND CONDITIONS</h1>
+ <h1 role="menuitem" aria-label="Current section: Terms and conditions">TERMS AND CONDITIONS</h1>
<div class="content"></div>
</div>
</div>
<div id="returns" role="region" aria-label="Return Policy" class="page">
<div class="scroll">
- <h1 aria-label="Current section: Return policy">RETURN POLICY</h1>
+ <h1 role="menuitem" aria-label="Current section: Return policy">RETURN POLICY</h1>
<div class="content"></div>
</div>
</div>
<div id="care" role="region" aria-label="Customer Care" class="page">
<div class="scroll">
- <h1 aria-label="Current section: Customer care">CUSTOMER CARE</h1>
+ <h1 role="menuitem" aria-label="Current section: Customer care">CUSTOMER CARE</h1>
<div class="content"></div>
</div>
</div>
@@ -284,11 +288,11 @@
<div id="collection" role="region" aria-label="Store">
<div class="scroll">
- <h1 aria-label="Current section: Store">LOADING...</h1>
+ <h1 role="menuitem" aria-label="Current section: Store">LOADING...</h1>
<div class="loader"></div>
<div class="content">
<script type="text/html" class="template">
- <div role="link" class="item" data-code="{{code8}}">
+ <div role="link" class="item" data-code="{{code8}}" aria-label="{{title}}">
<img src="{{image}}" alt="{{title}}">
</div>
</script>
@@ -298,9 +302,9 @@
<div id="search" role="search" aria-label="Search">
<div class="scroll">
- <h1 aria-label="Current section: Search">SEARCH</h1>
+ <h1 role="menuitem" aria-label="Current section: Search">SEARCH</h1>
<div class="form">
- <input type="text" class="q" placeholder="ENTER YOUR SEARCH">
+ <input type="text" role="textbox" class="q" placeholder="ENTER YOUR SEARCH">
</div>
</div>
</div>
@@ -373,16 +377,17 @@
<div id="login" role="region" aria-label="Log In">
<div class="scroll">
- <h1 aria-label="Current section: Log In">LOGIN</h1>
+ <h1 role="menuitem" aria-label="Current section: Log In">LOGIN</h1>
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="login_email_address">Email Address</label>
- <input type="email" id="login_email_address" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="1">
+ <input type="email" role="textbox" id="login_email_address" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="1">
<span class='err'></span>
<label for="login_password">Password</label>
- <form><input type="password" id="login_password" name="Password" aria-placeholder="PASSWORD" required tabindex="2"></form>
+ <form><input type="password" role="textbox" id="login_password" name="Password" aria-placeholder="PASSWORD" required tabindex="2"></form>
<span class='err'></span>
</div>
<div class="container-fill">
@@ -402,7 +407,7 @@
<div id="logout" role="region" aria-label="You are now logged out">
<div class="scroll">
- <h1 aria-label="Current section: You are now Logged Out">LOGOUT</h1>
+ <h1 role="menuitem" aria-label="Current section: You are now Logged Out">LOGOUT</h1>
<div class="container">
<div class="container-fill">
<span class="container-message msg">
@@ -415,30 +420,31 @@
<div id="signup" role="region" aria-label="New User. Create an account">
<div class="scroll">
- <h1 aria-label="Current section: New User. Create an account">NEW USER</h1>
+ <h1 role="menuitem" aria-label="Current section: New User. Create an account">NEW USER</h1>
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="signup_name">First Name</label>
- <input type="text" id="signup_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
+ <input type="text" role="textbox" id="signup_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
<span class='err'></span>
<label for="signup_surname">Last Name</label>
- <input type="text" id="signup_surname" name="Surname" aria-placeholder="LAST NAME" required tabindex="2">
+ <input type="text" role="textbox" id="signup_surname" name="Surname" aria-placeholder="LAST NAME" required tabindex="2">
<span class='err'></span>
<label for="signup_email">Email Address</label>
- <input type="email" id="signup_email" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="3">
+ <input type="email" role="textbox" id="signup_email" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="3">
<span class='err'></span>
<label for="signup_confirmemail">Confirm Email Address</label>
- <input type="email" id="signup_confirmemail" name="ConfirmEmail" aria-placeholder="CONFIRM EMAIL ADDRESS" required tabindex="4">
+ <input type="email" role="textbox" id="signup_confirmemail" name="ConfirmEmail" aria-placeholder="CONFIRM EMAIL ADDRESS" required tabindex="4">
<span class='err'></span>
- <label for="signup_birthday">Birthday (MM/DD/YYYY)</label>
+ <label for="signup_birthday">Birthday optional (MM/DD/YYYY)</label>
<div class="select-wrapper date-wrapper">
<span></span>
- <input type="date" id="signup_birthday" name="BirthDay" aria-label="Birthday" min="1900-01-01" aria-placeholder="BIRTHDAY (MM/DD/YYYY)" required tabindex="5">
+ <input type="date" id="signup_birthday" name="BirthDay" aria-label="Birthday" min="1900-01-01" aria-placeholder="BIRTHDAY OPTIONAL (MM/DD/YYYY)" required tabindex="5">
</div>
<span class='err'></span>
@@ -475,7 +481,7 @@
<div class="checkbox-row">
<div class="checkbox-toggle">
<input type="checkbox" id="checkbox-shopping-account-terms" aria-labelledby="checkbox-gdpr-terms-label" name="GdprTerms" value="true" required tabindex="10">
- <label for="checkbox-shopping-data-profiling"></label>
+ <label for="checkbox-shopping-account-terms"></label>
</div>
<label class="checkbox-caption" for="checkbox-shopping-account-terms" id="checkbox-gdpr-terms-label">
I ACCEPT MY ACCOUNT TERMS AND CONDITIONS OF USE *
@@ -498,26 +504,27 @@
<div id="profile" role="region" aria-label="My Profile">
<div class="scroll">
- <h1 aria-label="Current section: My Profile">MY PROFILE</h1>
+ <h1 role="menuitem" aria-label="Current section: My Profile">MY PROFILE</h1>
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="profile_name">First Name</label>
- <input type="text" id="profile_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
+ <input type="text" role="textbox" id="profile_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
<span class='err'></span>
<label for="profile_surname">Last Name</label>
- <input type="text" id="profile_surname" name="Surname" aria-placeholder="LAST NAME" required tabindex="2">
+ <input type="text" role="textbox" id="profile_surname" name="Surname" aria-placeholder="LAST NAME" required tabindex="2">
<span class='err'></span>
<label for="profile_email">Email Address</label>
- <input type="email" id="profile_email" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="3">
+ <input type="email" role="textbox" id="profile_email" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="3">
<span class='err'></span>
- <label for="profile_birthday">Birthday (MM/DD/YYYY)</label>
+ <label for="profile_birthday">Birthday optional (MM/DD/YYYY)</label>
<div class="select-wrapper date-wrapper">
<span></span>
- <input type="date" id="profile_birthday" name="BirthDay" aria-label="Birthday" min="1900-01-01" aria-placeholder="BIRTHDAY (MM/DD/YYYY)" required tabindex="5">
+ <input type="date" id="profile_birthday" name="BirthDay" aria-label="Birthday" min="1900-01-01" aria-placeholder="BIRTHDAY OPTIONAL (MM/DD/YYYY)" required tabindex="5">
</div>
<span class='err'></span>
@@ -571,15 +578,16 @@
<div id="shipping" role="region" aria-label="Address Book">
<div class="scroll">
- <h1 aria-label="Current section: Your address book">ADDRESS BOOK</h1>
+ <h1 role="menuitem" aria-label="Current section: Your address book">ADDRESS BOOK</h1>
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<div class="address"></div>
</div>
<div class="container-fill">
<div class="container-message">
- <span class="msg">
+ <span role="heading" class="msg">
* Your personal and payment<br>
information will always remain private
</span>
@@ -595,16 +603,17 @@
<div id="payment" role="region" aria-label="My Card">
<div class="scroll">
- <h1 aria-label="Current section: My Card">MY CARD</h1>
+ <h1 role="menuitem" aria-label="Current section: My Card">MY CARD</h1>
<div class="form">
<div class="container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<div class="cc"></div>
<div class="address"></div>
</div>
<div class="container-fill">
<div class="container-message">
- <span class="msg">
+ <span role="heading" class="msg">
* Your personal and payment<br>
information will always remain private
</span>
@@ -620,7 +629,7 @@
<div id="settings" role="region" aria-label="Notifications">
<div class="scroll">
- <h1 aria-label="Current section: Notifications">NOTIFICATIONS</h1>
+ <h1 role="menuitem" aria-label="Current section: Notifications">NOTIFICATIONS</h1>
<div class="form">
<div class="toggle-container">
<div class="toggle-row">
@@ -650,7 +659,7 @@
<div id="orders" role="region" aria-label="My Orders">
<div class="scroll">
- <h1 aria-label="Current section: My orders">MY ORDERS</h1>
+ <h1 role="menuitem" aria-label="Current section: My orders">MY ORDERS</h1>
<div id="order_list">
<div class="list"></div>
<div class="empty">You have no orders.</div>
@@ -661,7 +670,6 @@
Details &gt;
</div>
<div class="txt">
-
<span class="text-date">{{date}}</span>
<span class="text-id">ORDER #: {{id}}</span>
<span class="text-total">ORDER TOTAL: {{total}}</span>
@@ -729,7 +737,7 @@
<!-- CART ================================================ -->
<div id="cart" role="region" aria-label="Your Cart">
- <h1 role="presentation">
+ <h1 role="menuitem" role="presentation">
<span class="full_msg" role="heading" aria-label="Current section: Your cart">
YOUR CART / <span class="itemcount"></span>
</span>
@@ -739,9 +747,9 @@
</h1>
<div class="steps">
- <span class="summary_step">SUMMARY</span>
- <span class="shipping_step">SHIPPING</span>
- <span class="payment_step">PAYMENT</span>
+ <div role="menuitem" class="summary_step"><span>SUMMARY</span></div>
+ <div role="menuitem" class="shipping_step"><span>SHIPPING</span></div>
+ <div role="menuitem" class="payment_step"><span>PAYMENT</span></div>
</div>
<div id="cart_summary" role="region" aria-label="Cart Summary">
@@ -752,38 +760,38 @@
<div class="rows">
<script type="text/html" class="template">
<div class="cart_item_image">
- <a href="#/store/{{code8}}" aria-label="{{cleantitle}}"><img src="{{image}}"></a>
+ <a href="#/store/{{code8}}" role="link" aria-label="{{cleantitle}}"><img src="{{image}}"></a>
</div>
<div class="cart_item_info">
- <span class="sku" aria-label="SKU">{{sku}}</span>
- <span class="title" aria-label="Product name: {{cleantitle}}">{{title}}</span>
- <span class="type" aria-label="Product type">{{type}}</span>
- <div class="meta">
- <div class="meta-size" aria-label="Size"><b>SIZE:</b> {{size}}</div>
- <div class="meta-color" aria-label="Color"><b>COLOR:</b> {{color}}</div>
- <div class="meta-quantity" aria-label="Quantity"><b>QUANTITY:</b> {{quantity}}</div>
+ <span class="sku">{{sku}}</span>
+ <span class="title">{{title}}</span>
+ <span class="type">{{type}}</span>
+ <div role="list" class="meta">
+ <div class="meta-size" role="listitem" aria-label="Size: {{size}}"><b>SIZE:</b> {{size}}</div>
+ <div class="meta-color" role="listitem" aria-label="Color: {{color}}"><b>COLOR:</b> {{color}}</div>
+ <div class="meta-quantity" role="listitem" aria-label="Quantity: {{quantity}]"><b>QUANTITY:</b> {{quantity}}</div>
</div>
</div>
<div class="cart_item_price">
- <span class="remove" aria-label="Remove item from your cart. Item to be removed: {{cleantitle}}"></span>
+ <span role="menuitem" class="remove" aria-label="Remove item from your cart. Item to be removed: {{cleantitle}}"></span>
<span class="price">{{price}}</span>
</div>
</script>
</div>
- <div class="cart-summary">
- <div class="cart-summary-row">
+ <div class="cart-summary" role="list">
+ <div class="cart-summary-row subtotal_row" role="listitem">
<span class="label">SUB TOTAL</span>
<span class="subtotal"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row" role="listitem" aria-label="Estimated shipping and handling $0">
<span class="label">ESTIMATED SHIPPING<br>& HANDLING</span>
<span class="shipping"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row" role="listitem" aria-label="Tax $0">
<span class="label">TAX</span>
<span class="tax"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row total_row" role="listitem">
<span class="label">TOTAL</span>
<span class="total"></span>
</div>
@@ -804,7 +812,7 @@
<div class="form">
<div class="dropdown-wrapper">
<div class="dropdown-title add_edit">add / edit</div>
- <div class="dropdown select_address">
+ <div role="menuitem" class="dropdown select_address">
ADDRESS
</div>
</div>
@@ -852,7 +860,7 @@
<div class="container-row">
<div class="container-fill">
<div class="container-message">
- <span class="msg">
+ <span role="heading" class="msg">
* Your personal and payment<br>
information will always remain private
</span>
@@ -875,6 +883,7 @@
<div class="billing-container container">
<div class="container-row">
+ <span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<div class="checkbox-container">
<div class="checkbox-row">
@@ -892,7 +901,7 @@
<div class="address_dropdown dropdown-wrapper">
<div class="dropdown-title add_edit"> </div>
- <div class="dropdown select_address">
+ <div role="menuitem" class="dropdown select_address">
BILLING ADDRESS
</div>
</div>
@@ -917,7 +926,7 @@
<div class="cc_dropdown dropdown-wrapper">
<div class="dropdown-title add_edit"></div>
- <div class="dropdown select_address">
+ <div role="menuitem" class="dropdown select_address">
PAYMENT METHOD
</div>
</div>
@@ -940,19 +949,19 @@
<div class="cc"></div>
<div class="cc_confirm">
- <h3>PLEASE ENTER YOUR SECURITY CODE TO CONFIRM</h3>
+ <h3>PLEASE ENTER THE SECURITY CODE ON THE BACK OF YOUR CARD TO CONFIRM</h3>
<input type="number" name="CvvConfirm" placeholder="SECURITY CODE" required>
</div>
</div>
<div class="container-fill">
<div class="container-message">
- <span class="msg">
+ <span role="heading" class="msg">
* Your personal and payment<br>
information will always remain private
</span>
</div>
- <a class='privacy-link'> href="#/page/privacy">
+ <a class='privacy-link' role="link" href="#/page/privacy">
<div class="privacy-msg">
Consult our <u>PRIVACY POLICY</u> for further information.
</div>
@@ -965,21 +974,21 @@
<div id="cart_confirm" role="region" aria-label="Confirm your order">
<div class="scroll">
- <h1 aria-label="Current section: Confirm your cart">CONFIRM</h1>
+ <h1 role="menuitem" aria-label="Current section: Confirm your cart">CONFIRM</h1>
<div class="order_section">
<h2>ORDER SUMMARY</h2>
<div class="rows">
<script type="text/html" class="template">
- <div class="cart_item_info">
+ <div class="cart_item_info" row="table">
<span class="sku">{{sku}}</span>
<span class="title">{{title}}</span>
<span class="type">{{type}}</span>
<div class="meta">
- <div class="meta-size"><b>SIZE:</b> {{size}}</div>
- <div class="meta-color"><b>COLOR:</b> {{color}}</div>
- <div class="meta-quantity"><b>QUANTITY:</b> {{quantity}}</div>
+ <div class="meta-size" role="row" aria-label="Size: {{size}}"><b>SIZE:</b> {{size}}</div>
+ <div class="meta-color" role="row" aria-label="Color: {{color}}"><b>COLOR:</b> {{color}}</div>
+ <div class="meta-quantity" role="row" aria-label="Quantity: {{quantity}]"><b>QUANTITY:</b> {{quantity}}</div>
</div>
</div>
<div class="cart_item_price">
@@ -987,20 +996,20 @@
</div>
</script>
</div>
- <div class="cart-summary">
- <div class="cart-summary-row">
+ <div class="cart-summary" row="table">
+ <div class="cart-summary-row subtotal_row" role="row">
<span class="label">SUB TOTAL</span>
<span class="subtotal"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row" role="row" aria-label="Estimated shipping and handling $0">
<span class="label">ESTIMATED SHIPPING<br>& HANDLING</span>
<span class="shipping"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row" role="row" aria-label="Tax $0">
<span class="label">TAX</span>
<span class="tax"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row total_row" role="row">
<span class="label">TOTAL</span>
<span class="total"></span>
</div>
@@ -1074,15 +1083,15 @@
</div>
<br><br>
For more information, please consult our
- <a href="#/page/privacy">Privacy Policy</a> or visit
- <a href="#" id="care-link">Customer Care</a>.
+ <a role="link" href="#/page/privacy">Privacy Policy</a> or visit
+ <a role="link" href="#" id="care-link">Customer Care</a>.
<br><br>
To continue to My Account we invite you to click accept. Otherwise you can continue to navigate as an unregistered user.
<br><br>
<div id="consent_error">Please note that if you do not consent to terms, you cannot use the app.</div>
<br><br>
- <button id="consent_proceed">PROCEED</button>
- <button id="consent_logout">LOG OUT</button>
+ <button role="menuitem" id="consent_proceed">PROCEED</button>
+ <button role="menuitem" id="consent_logout">LOG OUT</button>
</div>
<div id="selector">
@@ -1099,7 +1108,7 @@
<script type="text/html" id="creditcard_template">
<label for="creditcard_id_{{_id}}">Credit Card Number</label>
- <input type="number" id="creditcard_id_{{_id}}" name="Number" aria-placeholder="CREDIT CARD NUMBER" required>
+ <input type="number" role="textbox" id="creditcard_id_{{_id}}" name="Number" aria-placeholder="CREDIT CARD NUMBER" required tabindex="1">
<span class='err'></span>
<div class="half-input">
@@ -1110,7 +1119,7 @@
<div class="half-input">
<div class="select-wrapper">
<span></span>
- <select name="ExpirationMonth" id="cc_expiration_month_{{_id}}">
+ <select name="ExpirationMonth" id="cc_expiration_month_{{_id}}" tabindex="2">
<option value="NONE">EXPIRATION MONTH</option>
<option value="01">01</option>
<option value="02">02</option>
@@ -1128,7 +1137,7 @@
</div>
<div class="select-wrapper">
<span></span>
- <select name="ExpirationYear" id="cc_expiration_year_{{_id}}">
+ <select name="ExpirationYear" id="cc_expiration_year_{{_id}}" tabindex="3">
<option value="NONE">EXPIRATION YEAR</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
@@ -1146,25 +1155,25 @@
</div>
</div>
<label for="cc_cvv_{{_id}}">Security Code</label>
- <input type="number" id="cc_cvv_{{_id}}" name="Cvv" aria-placeholder="SECURITY CODE" required>
+ <input type="number" id="cc_cvv_{{_id}}" name="Cvv" aria-placeholder="SECURITY CODE" required tabindex="4">
<span class='err'></span>
</script>
<script type="text/html" id="address_template">
<label for="address_name_{{_id}}">First Name</label>
- <input type="text" id="address_name_{{_id}}" name="Name" aria-placeholder="First Name">
+ <input type="text" role="textbox" id="address_name_{{_id}}" name="Name" aria-placeholder="First Name" tabindex="1">
<span class="err"></span>
<label for="address_surname_{{_id}}">Last Name</label>
- <input type="text" id="address_surname_{{_id}}" name="Surname" aria-placeholder="Last Name">
+ <input type="text" role="textbox" id="address_surname_{{_id}}" name="Surname" aria-placeholder="Last Name" tabindex="2">
<span class="err"></span>
<label for="address_address1_{{_id}}">Address line 1</label>
- <input type="text" id="address_address1_{{_id}}" name="Address1" aria-placeholder="Address Line 1">
+ <input type="text" role="textbox" id="address_address1_{{_id}}" name="Address1" aria-placeholder="Address Line 1" tabindex="3">
<span class="err"></span>
<label for="address_address2_{{_id}}">Address line 2</label>
- <input type="text" id="address_address2_{{_id}}" name="Address2" aria-placeholder="Address Line 2">
+ <input type="text" role="textbox" id="address_address2_{{_id}}" name="Address2" aria-placeholder="Address Line 2" tabindex="4">
<span class="err"></span>
<div class="half-input">
@@ -1173,10 +1182,10 @@
</div>
<div class="half-input">
- <input type="text" id="address_city_{{_id}}" name="City" aria-placeholder="City">
+ <input type="text" role="textbox" id="address_city_{{_id}}" name="City" aria-placeholder="City" tabindex="5">
<div class="select-wrapper">
<span></span>
- <select id="address_state_{{_id}}" name="Province">
+ <select id="address_state_{{_id}}" name="Province" tabindex="6">
{{PROVINCES}}
</select>
</div>
@@ -1188,19 +1197,19 @@
</div>
<div class="half-input">
- <input type="text" id="address_zip_{{_id}}" name="ZipCode" aria-placeholder="ZIP" required>
+ <input type="text" role="textbox" id="address_zip_{{_id}}" name="ZipCode" aria-placeholder="ZIP" required tabindex="7">
<div class="country-wrapper-static">
<span class="country-label">UNITED STATES</span>
<!--
<div id="country-select">
- <input type="text" name="Country" placeholder="UNITED STATES" required>
+ <input type="text" role="textbox" name="Country" placeholder="UNITED STATES" required>
</div>
-->
</div>
</div>
<label for="address_phone_{{_id}}">Phone Number</label>
- <input type="number" id="address_phone_{{_id}}" name="Phone" aria-placeholder="PHONE NUMBER">
+ <input type="number" id="address_phone_{{_id}}" name="Phone" aria-placeholder="PHONE NUMBER" tabindex="8">
<span class="err"></span>
<!--
<div class="checkbox-container save_as_default">
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/index.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/index.js
index 42cec6f1..8574372d 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/index.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/index.js
@@ -22,7 +22,9 @@ var app = (function(){
app.bind = function(){
document.addEventListener('touchmove', function(e){ e.preventDefault() })
- FastClick.attach(document.body)
+ if (!app.accessible) {
+ FastClick.attach(document.body)
+ }
}
app.build = function(){
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/LoginView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/LoginView.js
index 7458d159..4927bea2 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/LoginView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/LoginView.js
@@ -33,7 +33,7 @@ var LoginView = FormView.extend({
},
forgot_password: function(){
- window.open("http://www.stoneisland.com/", '_system')
+ window.open("https://www.stoneisland.com/yTos/Plugins/AreaLocalizer/Redirectarea?area=Account&controllerName=User&actionName=Index", '_system')
},
validate_presence: {
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/SignupView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/SignupView.js
index 66d8f239..18fecebb 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/SignupView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/auth/SignupView.js
@@ -63,8 +63,18 @@ var SignupView = FormView.extend({
if (! data.Email.match("@")) { errors.push([ "Email", "Email address is not valid." ]) }
if (data.Email.toLowerCase() !== data.ConfirmEmail.toLowerCase()) { errors.push([ "ConfirmEmail", "Email addresses don't match." ]) }
// if (data.Gender === "NONE") { errors.push([ "Gender", "Please supply your gender." ]) }
- if (data.DataProfiling !== "true") { errors.push([ "DataProfiling", "You must consent to data profiling to use the Stone Island app." ]) }
- if (data.GdprTerms !== "true") { errors.push([ "GdprTerms", "You must agree to the Your My Account terms to use the Stone Island app." ]) }
+ if (data.DataProfiling !== "true") {
+ errors.push([ "DataProfiling", "You must consent to data profiling to use the Stone Island app." ])
+ setTimeout(function(){
+ this.$("#checkbox-shopping-data-profiling-label").closest(".checkbox-row").addClass("error_hilite")
+ }.bind(this), 10)
+ }
+ if (data.GdprTerms !== "true") {
+ errors.push([ "GdprTerms", "You must agree to the Your My Account terms to use the Stone Island app." ])
+ setTimeout(function(){
+ this.$("#checkbox-shopping-account-terms").closest(".checkbox-row").addClass("error_hilite")
+ }.bind(this), 10)
+ }
var now = new Date ()
var year = now.getFullYear()
@@ -78,6 +88,12 @@ var SignupView = FormView.extend({
}
data.YooxLetter = this.$("[name=YooxLetter]").prop("checked")
+ if (!data.YooxLetter) {
+ errors.push([ "YooxLetter", "You must consent to marketing to use the Stone Island app." ])
+ setTimeout(function(){
+ this.$("#checkbox-data-profiling").closest(".checkbox-row").addClass("error_hilite")
+ }.bind(this), 10)
+ }
},
finalize: function(data){
@@ -114,19 +130,19 @@ var SignupView = FormView.extend({
},
error: function(data){
- try {
- data = JSON.parse(data.responseText)
- app.signup.show_errors([[ 'Name', data['Error']['Description'] ]])
- }
- catch (e) {
- switch (data.status) {
- case 409:
- app.signup.show_errors([[ 'Email', "Email is already in use." ]])
- break
- default:
+ switch (data.status) {
+ case 409:
+ app.signup.show_errors([[ 'Email', "Email is already in use." ]])
+ break
+ default:
+ try {
+ data = JSON.parse(data.responseText)
+ app.signup.show_errors([[ 'Name', data['Error']['Description'] ]])
+ }
+ catch (e) {
app.signup.show_errors([[ 'Name', "There was an unknown error." ]])
- break
- }
+ }
+ break
}
},
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/HubView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/HubView.js
index d3b15f77..0d59bcc8 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/HubView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/HubView.js
@@ -91,7 +91,7 @@ var HubView = ScrollableView.extend({
})
gallery.on('staticClick', function(e){
var url = gallery.selectedElement.style.backgroundImage.replace(/url\(\"?/,"").replace(/\"?\)/,"")
- app.fullscreenViewer.show(url, url)
+ app.fullscreenViewer.show(url, url, stonewash(row.title))
})
$(".gallery-" + row.id).attr('aria-label', stonewash(row.title) + ". Image gallery, use the arrows to scroll.")
if (accessibility.voiceOver) {
@@ -99,7 +99,7 @@ var HubView = ScrollableView.extend({
$(".gallery-target-" + row.id).click(function(e){
e && e.preventDefault()
var url = gallery.selectedElement.style.backgroundImage.replace(/url\(\"?/,"").replace(/\"?\)/,"")
- app.fullscreenViewer.show(url, url)
+ app.fullscreenViewer.show(url, url, stonewash(row.title))
})
}
}
@@ -134,13 +134,13 @@ var HubView = ScrollableView.extend({
} else {
$(el).click(function(e){
e && e.preventDefault()
- app.fullscreenViewer.show(row.image[0].uri)
+ app.fullscreenViewer.show(row.image[0].uri, row.image[0].uri, stonewash(row.title) + ". Main image")
})
$(".gallery-" + row.id).attr('aria-label', stonewash(row.title) + ". Main image")
$(".gallery-target-" + row.id).attr('aria-label', stonewash(row.title) + ". Main image.")
$(".gallery-target-" + row.id).click(function(e){
e && e.preventDefault()
- app.fullscreenViewer.show(row.image[0].uri)
+ app.fullscreenViewer.show(row.image[0].uri, row.image[0].uri, stonewash(row.title) + ". Main image")
})
}
$t.find(".gallery-left").remove()
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/StoryView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/StoryView.js
index 0b3b17d7..19d5bac8 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/StoryView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/blogs/StoryView.js
@@ -40,8 +40,8 @@ var StoryView = ScrollableView.extend({
.replace(/{{body}}/, row.body.replace(/\n/g, "<br>"))
var li = document.createElement("li")
li.dataset.id = row.id
- li.innerHTML = row.title
- li.setAttribute('role', "link")
+ li.innerHTML = "<div style='pointer-events: none'>" + row.title + "</div>"
+ li.setAttribute('role', "menuitem")
this.sections[row.id] = row
this.$links.append(li)
this.$content.append(t)
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartConfirm.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartConfirm.js
index 6909dcc3..11d529ff 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartConfirm.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartConfirm.js
@@ -90,9 +90,9 @@ var CartConfirm = FormView.extend({
.replace(/{{sku}}/, num)
.replace(/{{title}}/, title)
.replace(/{{type}}/, type)
- .replace(/{{size}}/, size_name || "DEFAULT")
- .replace(/{{color}}/, color_name || "DEFAULT")
- .replace(/{{quantity}}/, 1)
+ .replace(/{{size}}/g, size_name || "DEFAULT")
+ .replace(/{{color}}/g, color_name || "DEFAULT")
+ .replace(/{{quantity}}/g, 1)
.replace(/{{price}}/, as_cash(details.Item.Price.DiscountedPrice))
$el.data("price", details.Item.Price.DiscountedPrice)
$el.html(t)
@@ -109,6 +109,8 @@ var CartConfirm = FormView.extend({
this.$shipping.html( as_cash(shipping_cost) )
this.$tax.html( as_cash(tax) )
this.$total.html( as_cash(total) )
+ this.$(".subtotal_row").attr('aria-label', "Subtotal " + as_cash(subtotal))
+ this.$(".total_row").attr('aria-label', "Total " + as_cash(total))
if (data.Receiver) {
var street = data.Receiver.StreetWithNumber.replace(/\n$/,"").replace("\n", ", ")
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartPayment.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartPayment.js
index 40d08d9e..0e4c3b84 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartPayment.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartPayment.js
@@ -73,6 +73,10 @@ var CartPayment = FormView.extend({
this.address.disabled = this.address_list_mode
this.$address_form.toggle(! this.address_list_mode)
this.$address_list.toggle(this.address_list_mode)
+ this.scroller.refresh()
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
toggle_cc: function(state){
@@ -86,6 +90,10 @@ var CartPayment = FormView.extend({
this.$cc_form.toggle(! this.cc_list_mode)
this.$cc_list.toggle(this.cc_list_mode)
this.$cc_confirm.toggle(this.cc_list_mode)
+ this.scroller.refresh()
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
focus_on_cc: function(e){
@@ -104,8 +112,8 @@ var CartPayment = FormView.extend({
this.toggle_address( !! app.account.ccs.length )
this.toggle_cc( !! app.account.ccs.length )
- app.account.ccs.forEach(function(cc){
- var address_t = this.address_template.replace(/{{id}}/g, cc.Id)
+ app.account.ccs.forEach(function(cc, i){
+ var address_t = this.address_template.replace(/{{id}}/g, (cc.Id || i))
.replace(/{{checked}}/g, cc.IsDefault ? "checked" : "")
.replace(/{{name}}/g, (cc.Name + " " + cc.Surname).toUpperCase())
.replace(/{{address}}/g, cc.Address.replace(/\n$/,"").replace("\n", ", "))
@@ -113,7 +121,7 @@ var CartPayment = FormView.extend({
.replace(/{{state}}/g, cc.Province)
.replace(/{{zip}}/g, cc.ZipCode)
- var cc_t = this.cc_template.replace(/{{id}}/g, cc.Id)
+ var cc_t = this.cc_template.replace(/{{id}}/g, (cc.Id || i))
.replace(/{{checked}}/g, cc.IsDefault ? "checked" : "")
.replace(/{{number}}/g, cc['Number'])
.replace(/{{type}}/g, cc.Type.toUpperCase())
@@ -122,6 +130,9 @@ var CartPayment = FormView.extend({
this.$address_list.append(address_t)
this.$cc_list.append(cc_t)
}.bind(this))
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
finalize: function(data){
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartShipping.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartShipping.js
index b5d6647b..157e75f5 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartShipping.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartShipping.js
@@ -43,8 +43,8 @@ var CartShipping = FormView.extend({
this.toggle_dropdown(false)
return
}
- app.account.addresses.forEach(function(address){
- var t = this.template.replace(/{{id}}/g, address.Id)
+ app.account.addresses.forEach(function(address, i){
+ var t = this.template.replace(/{{id}}/g, (address.Id || i))
.replace(/{{checked}}/g, address.IsDefault ? "checked" : "")
.replace(/{{name}}/g, (address.Name + " " + address.Surname).toUpperCase())
.replace(/{{address}}/g, address.Address.replace(/\n$/,"").replace("\n", ", "))
@@ -69,6 +69,9 @@ var CartShipping = FormView.extend({
$("#standard-shipping").prop("checked", cart_data.Cart.DeliveryMethod.Type == 1)
$("#express-shipping").prop("checked", cart_data.Cart.DeliveryMethod.Type == 2)
}
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
toggle_dropdown: function(state){
@@ -80,6 +83,10 @@ var CartShipping = FormView.extend({
this.address.disabled = this.list_mode
this.$address_form.toggle(! this.list_mode)
this.$address_list.toggle(this.list_mode)
+ this.scroller.refresh()
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
// sdk.cart.set_shipping_address
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartSummary.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartSummary.js
index 51aa35ef..9637ae35 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartSummary.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/cart/CartSummary.js
@@ -112,11 +112,11 @@ var CartSummary = ScrollableView.extend({
.replace(/{{sku}}/g, num)
.replace(/{{code8}}/g, data['Code8'])
.replace(/{{title}}/g, title)
- .replace(/{{cleantitle}}/g, stonewash(title))
+ .replace(/{{cleantitle}}/g, num + ' ' + stonewash(title) + ' ' + descriptions['MicroCategory'])
.replace(/{{type}}/, type)
- .replace(/{{size}}/, size_name)
- .replace(/{{color}}/, color_name)
- .replace(/{{quantity}}/, 1)
+ .replace(/{{size}}/g, size_name)
+ .replace(/{{color}}/g, color_name)
+ .replace(/{{quantity}}/g, 1)
.replace(/{{price}}/, as_cash(details.Item.Price.DiscountedPrice))
$el.html(t)
this.refreshScroller()
@@ -129,6 +129,7 @@ var CartSummary = ScrollableView.extend({
this.updateTotals()
+ this.$cart_empty.hide()
this.el.className = "full"
this.refreshScroller()
app.curtain.hide("loading")
@@ -149,6 +150,8 @@ var CartSummary = ScrollableView.extend({
this.$shipping.html( as_cash(shipping_cost) )
this.$tax.html( as_cash(tax) )
this.$total.html( as_cash(total) )
+ this.$(".subtotal_row").attr('aria-label', "Subtotal " + as_cash(subtotal))
+ this.$(".total_row").attr('aria-label', "Total " + as_cash(total))
},
empty: function(){
@@ -158,6 +161,7 @@ var CartSummary = ScrollableView.extend({
this.parent.$itemcount.html("0 ITEMS")
this.el.className = "empty"
this.parent.$steps.hide()
+ this.$cart_empty.show()
app.curtain.hide("loading")
},
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/etc/accessibility.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/etc/accessibility.js
index 31ddaf23..a18ad5b3 100644
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/etc/accessibility.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/etc/accessibility.js
@@ -30,8 +30,8 @@ var accessibility = (function() {
MobileAccessibility.getTextZoom(function getTextZoomCallback(textZoom) {
console.log('WebView text should be scaled to the preferred value ' + textZoom + '%')
if (textZoom > 100) {
- app.accessible = true
- $("html").addClass('accessible')
+ // app.accessible = true
+ // $("html").addClass('accessible')
}
});
MobileAccessibility.isVoiceOverRunning(function(state){
@@ -73,5 +73,5 @@ var accessibility = (function() {
})()
function stonewash (s) {
- return s.replace(/'9/g, '19').replace(/'0/g, '20').replace(/_/g, ' ').replace(/-/g, ' - ').replace(/^[013456789][0-9]+/, '')
+ return s.replace(/'9/g, '19').replace(/'0/g, '20').replace(/_/g, ' ').replace(/-/g, ' - ')
}
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/CurtainView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/CurtainView.js
index ddb6bc19..d444fd60 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/CurtainView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/CurtainView.js
@@ -28,7 +28,7 @@ var CurtainView = View.extend({
},
click: function(){
- if (document.body.classList.contains("nav") && !app.accessible) {
+ if (document.body.classList.contains("nav")) {
app.nav.hide()
}
if (app.selector.visible) {
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/NavView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/NavView.js
index 1655b7f8..a6a39633 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/NavView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/nav/NavView.js
@@ -1,3 +1,5 @@
+var klassTimeout;
+
var NavView = View.extend({
el: "#nav",
@@ -37,6 +39,8 @@ var NavView = View.extend({
"click .insta": "insta",
"click .tw": "tw",
"click .yt": "yt",
+
+ "click .close": "close",
},
initialize: function(){
@@ -50,14 +54,16 @@ var NavView = View.extend({
doneShowingNav = true
}, 800)
if (klass) {
- setTimeout(function(){
+ klassTimeout = setTimeout(function(){
this.addClass(klass)
}.bind(this), 500)
}
},
hide: function(){
- if (!doneShowingNav) return
+ if (!doneShowingNav) {
+ clearTimeout(klassTimeout)
+ }
$("body").removeClass("nav")
app.curtain.hide("dark")
},
@@ -161,7 +167,7 @@ var NavView = View.extend({
fb: function(){
- window.open(is_ios ? "facebook://profile/231623463406" : "https://www.facebook.com/StoneIsland", '_system')
+ window.open("https://www.facebook.com/StoneIsland", '_system')
},
insta: function(){
window.open("https://instagram.com/stoneisland_official", '_system')
@@ -173,4 +179,8 @@ var NavView = View.extend({
window.open("https://www.youtube.com/user/StoneIslandOfficial", '_system')
},
+ close: function(){
+ this.hide()
+ },
+
})
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/CollectionView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/CollectionView.js
index d3343652..70bb22b4 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/CollectionView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/CollectionView.js
@@ -194,9 +194,10 @@ var CollectionView = ScrollableView.extend({
append: function(item, is_single_product){
this.items[ item['Code8'] ] = item
+ console.log("TITLE: " + item['ModelNames'])
var t = this.template.replace(/{{image}}/, sdk.image(item['DefaultCode10'], is_single_product ? '13_f' : '11_f'))
.replace(/{{code8}}/, item['Code8'])
- .replace(/{{title}}/, stonewash(item['ModelNames']))
+ .replace(/{{title}}/g, stonewash(item['ModelNames'] + ' ' + item['MicroCategory']))
var $t = $(t)
if (app.store.ShowProductNameOnCollectionPage) {
var $title = $("<span>")
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/GalleryView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/GalleryView.js
index e84caa68..417b14c3 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/GalleryView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/GalleryView.js
@@ -36,6 +36,7 @@ var GalleryView = View.extend({
valid_styles[style] = size
}
})
+ this.large_styles = large_styles
Object.keys(valid_styles).sort(sort_image_styles).forEach(function(style){
var id = valid_styles[style] + "_" + style
@@ -57,18 +58,14 @@ var GalleryView = View.extend({
contain: true,
draggable: true,
})
+ if (app.accessible) {
+ gallery.select(1, true, true)
+ }
- this.gallery.on('change', function(){
- var currentImage = this.gallery.selectedElement.style.backgroundImage.replace(/url\(\"?/,"").replace(/\"?\)/,"")
- var partz = currentImage.split("_")
- var head = partz[0]
- var size = partz[1]
- var tail = partz[2]
- var end_partz = tail.split(/\./)
- var style = end_partz[0]
- var label = YOOX_IMAGE_STYLE_LABELS[style] || "Image: Alternate view"
- $("#product .gallery-target").attr('aria-label', label)
- })
+ var last_style = 'f'
+ this.gallery.on('select', function(){
+ this.updateLabel()
+ }.bind(this))
this.gallery.on('staticClick', this.static_click.bind(this))
@@ -85,11 +82,39 @@ var GalleryView = View.extend({
var head = partz[0]
var size = partz[1]
var tail = partz[2]
- var end_partz = tail.split(/\./)
+ var end_partz = (tail || 'f').split(/\./)
var style = end_partz[0]
- var largest_size = large_styles[style]
+ var largest_size = this.large_styles[style]
+ var title = YOOX_IMAGE_STYLE_LABELS[style] || "Alternate view"
var hiresImage = [head, largest_size, tail].join("_")
- app.fullscreenViewer.show(currentImage, hiresImage)
+ // console.log(partz, style)
+ app.fullscreenViewer.show(currentImage, hiresImage, title)
+ },
+
+ animating: false,
+ previous: function(e){
+ this.gallery.previous()
+ this.updateLabel()
+ },
+ next: function(e){
+ this.gallery.next()
+ this.updateLabel()
+ },
+ updateLabel: function(){
+ var currentImage = this.gallery.selectedElement.style.backgroundImage.replace(/url\(\"?/,"").replace(/\"?\)/,"")
+ var partz = currentImage.split("_")
+ var head = partz[0]
+ var size = partz[1]
+ var tail = partz[2]
+ var end_partz = tail.split(/\./)
+ var style = end_partz[0]
+ if (style === this.last_style) {
+ style = 'z'
+ }
+ this.last_style = style
+ var label = YOOX_IMAGE_STYLE_LABELS[style] || "Image: Alternate view"
+ console.log("> new style: " + style)
+ $("#product .gallery-target").attr('aria-label', label)
},
touchstart: function(e){
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/ProductView.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/ProductView.js
index f834b1c5..570024b6 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/ProductView.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/products/ProductView.js
@@ -74,10 +74,10 @@ var ProductView = ScrollableView.extend({
cache: {},
gallery_left: function(){
- app.product.gallery.gallery.previous()
+ app.product.gallery.previous()
},
gallery_right: function(){
- app.product.gallery.gallery.next()
+ app.product.gallery.next()
},
find: function(code, cb){
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/view/Serializable.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/view/Serializable.js
index 3181fddd..0d638412 100755
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/view/Serializable.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/lib/view/Serializable.js
@@ -61,6 +61,7 @@ var SerializableView = View.extend({
focus_input: function(e){
$(e.currentTarget).removeClass("error_hilite")
+ $(e.currentTarget).closest(".checkbox-row").removeClass("error_hilite")
},
focus_date: function(e){
@@ -104,6 +105,7 @@ var SerializableView = View.extend({
console.log("showing errors")
console.log(errors)
var msgs = []
+ this.$('.err_heading').addClass('error_visible')
this.$('.error_hilite').removeClass('error_hilite')
this.$('.err').html('')
errors.forEach(function(e, i){
@@ -114,6 +116,9 @@ var SerializableView = View.extend({
if (el && el.nodeName === 'SELECT') {
$el.parent().addClass('error_hilite')
$el.parent().next('.err').html(e[1])
+ } else if (el && el.type === 'date') {
+ $el.parent().addClass('error_hilite')
+ $el.parent().next('.err').html(e[1])
} else {
$el.addClass('error_hilite')
$el.next('.err').html(e[1])
@@ -123,6 +128,10 @@ var SerializableView = View.extend({
}.bind(this))
// this.$msg.html(msgs.join("<br>"))
this.$msg.addClass('alert-notice')
+ if (app.view.scroller) {
+ app.view.scroller.refresh()
+ app.view.scroller.scrollTo(0, 0)
+ }
},
hide_errors: function(){
@@ -137,6 +146,8 @@ var SerializableView = View.extend({
save: function(e){
e && e.preventDefault()
+ this.$('.err_heading').removeClass('error_visible')
+
var valid = this.validate()
if (valid.errors.length) {
this.show_errors(valid.errors)
diff --git a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/vendor/imageviewer.js b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/vendor/imageviewer.js
index 847c6070..d80ae7ed 100644
--- a/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/vendor/imageviewer.js
+++ b/StoneIsland/platforms/ios/Stone Island.xcarchive/Products/Applications/Stone Island.app/www/js/vendor/imageviewer.js
@@ -85,7 +85,7 @@
//add a full screen view
$(function () {
if(!$body.length) $body = $('body');
- $body.append('<div id="iv-container">' + imageViewHtml + '<div class="iv-close"></div><div>');
+ $body.append('<div id="iv-container">' + imageViewHtml + '<div class="iv-close" role="button" aria-label="Close this image."></div><div>');
imageViewHtml = null
});
@@ -674,10 +674,10 @@
height: handleHeight + '%'
});
},
- show: function (image, hiResImg) {
+ show: function (image, hiResImg, message) {
if (this._fullPage) {
this.container.show();
- if (image) this.load(image, hiResImg);
+ if (image) this.load(image, hiResImg, message);
}
},
hide: function () {
@@ -701,9 +701,10 @@
$window.off(eventSuffix);
return null;
},
- load: function (image, hiResImgSrc) {
+ load: function (image, hiResImgSrc, message) {
var self = this,
container = this.container;
+ message = message || 'Viewing high-resolution image. Pinch to zoom or tap to close.'
container.find('.iv-snap-image,.iv-large-image').remove();
var snapImageWrap = this.container.find('.iv-snap-image-wrap');
@@ -711,9 +712,11 @@
var snapImage = new Image
snapImage.className = 'iv-snap-image'
snapImage.src = image
+ snapImage.setAttribute('aria-label', message)
var largeImage = new Image
largeImage.className = 'iv-large-image'
+ largeImage.setAttribute('aria-label', message)
var hiResImg;
diff --git a/StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate b/StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate
index 0e1af5c3..9ad1cbab 100644
--- a/StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate
+++ b/StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate
Binary files differ
diff --git a/StoneIsland/platforms/ios/Stone Island/Stone Island-Info.plist b/StoneIsland/platforms/ios/Stone Island/Stone Island-Info.plist
index 04d767f3..ee5e12e6 100644
--- a/StoneIsland/platforms/ios/Stone Island/Stone Island-Info.plist
+++ b/StoneIsland/platforms/ios/Stone Island/Stone Island-Info.plist
@@ -21,7 +21,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
- <string>1.2.6</string>
+ <string>1.3.2</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleURLTypes</key>
@@ -34,7 +34,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
- <string>1.2.6</string>
+ <string>1.3.2</string>
<key>GCM_SENDER_ID</key>
<string>85075801930</string>
<key>IS_GCM_ENABLED</key>
diff --git a/StoneIsland/platforms/ios/Stone Island/config.xml b/StoneIsland/platforms/ios/Stone Island/config.xml
index 0be22073..c5b1062b 100755
--- a/StoneIsland/platforms/ios/Stone Island/config.xml
+++ b/StoneIsland/platforms/ios/Stone Island/config.xml
@@ -1,5 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
-<widget android-versionCode="6126" id="us.okfoc.stoneisland" version="1.2.6" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+<widget android-versionCode="6132" id="us.okfoc.stoneisland" version="1.3.2" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<feature name="LocalStorage">
<param name="ios-package" value="CDVLocalStorage" />
</feature>
diff --git a/StoneIsland/platforms/ios/www/css/account.css b/StoneIsland/platforms/ios/www/css/account.css
index 998b6eac..6ea72423 100755
--- a/StoneIsland/platforms/ios/www/css/account.css
+++ b/StoneIsland/platforms/ios/www/css/account.css
@@ -139,6 +139,9 @@ label {
text-transform:uppercase;
height: 48px;
}
+.error_hilite label {
+ color: #f00;
+}
input[type=text], input[type=password], input[type=number], input[type=date], input[type=email] {
font-family:pfd, sans-serif;
font-size: 0.875rem;
diff --git a/StoneIsland/platforms/ios/www/css/cart.css b/StoneIsland/platforms/ios/www/css/cart.css
index 36a446a7..eda4cc82 100755
--- a/StoneIsland/platforms/ios/www/css/cart.css
+++ b/StoneIsland/platforms/ios/www/css/cart.css
@@ -11,7 +11,7 @@
display: flex;
flex-direction: row;
}
-#cart .steps span {
+#cart .steps div {
display: flex;
font-size: 1rem;
text-align: center;
@@ -22,6 +22,9 @@
justify-content: center;
align-items: center;
}
+#cart .steps div span {
+ pointer-events: none;
+}
.summary_step, .shipping_step {
border-right: 1px solid #666;
}
@@ -42,6 +45,14 @@
overflow: hidden;
position: relative;
}
+.vscroll #cart_summary,
+.vscroll #cart_shipping,
+.vscroll #cart_payment,
+.vscroll #cart_confirm,
+.vscroll #cart_thanks,
+.vscroll #cart_error {
+ overflow: auto;
+}
#cart.summary #cart_summary { display: block }
#cart_summary {
diff --git a/StoneIsland/platforms/ios/www/css/fonts/ionicons.css b/StoneIsland/platforms/ios/www/css/fonts/ionicons.css
index 885aa6bd..974a91f7 100755
--- a/StoneIsland/platforms/ios/www/css/fonts/ionicons.css
+++ b/StoneIsland/platforms/ios/www/css/fonts/ionicons.css
@@ -11,7 +11,20 @@
Modified icons to fit ionicon’s grid from original.
*/
@font-face { font-family: "Ionicons"; src: url("../fonts/ionicons.eot?v=2.0.0"); src: url("../fonts/ionicons.eot?v=2.0.0#iefix") format("embedded-opentype"), url("../fonts/ionicons.ttf?v=2.0.0") format("truetype"), url("../fonts/ionicons.woff?v=2.0.0") format("woff"), url("../fonts/ionicons.svg?v=2.0.0#Ionicons") format("svg"); font-weight: normal; font-style: normal; }
-.ion, .ionicons, .ion-alert:before, .ion-alert-circled:before, .ion-android-add:before, .ion-android-add-circle:before, .ion-android-alarm-clock:before, .ion-android-alert:before, .ion-android-apps:before, .ion-android-archive:before, .ion-android-arrow-back:before, .ion-android-arrow-down:before, .ion-android-arrow-dropdown:before, .ion-android-arrow-dropdown-circle:before, .ion-android-arrow-dropleft:before, .ion-android-arrow-dropleft-circle:before, .ion-android-arrow-dropright:before, .ion-android-arrow-dropright-circle:before, .ion-android-arrow-dropup:before, .ion-android-arrow-dropup-circle:before, .ion-android-arrow-forward:before, .ion-android-arrow-up:before, .ion-android-attach:before, .ion-android-bar:before, .ion-android-bicycle:before, .ion-android-boat:before, .ion-android-bookmark:before, .ion-android-bulb:before, .ion-android-bus:before, .ion-android-calendar:before, .ion-android-call:before, .ion-android-camera:before, .ion-android-cancel:before, .ion-android-car:before, .ion-android-cart:before, .ion-android-chat:before, .ion-android-checkbox:before, .ion-android-checkbox-blank:before, .ion-android-checkbox-outline:before, .ion-android-checkbox-outline-blank:before, .ion-android-checkmark-circle:before, .ion-android-clipboard:before, .ion-android-close:before, .ion-android-cloud:before, .ion-android-cloud-circle:before, .ion-android-cloud-done:before, .ion-android-cloud-outline:before, .ion-android-color-palette:before, .ion-android-compass:before, .ion-android-contact:before, .ion-android-contacts:before, .ion-android-contract:before, .ion-android-create:before, .ion-android-delete:before, .ion-android-desktop:before, .ion-android-document:before, .ion-android-done:before, .ion-android-done-all:before, .ion-android-download:before, .ion-android-drafts:before, .ion-android-exit:before, .ion-android-expand:before, .ion-android-favorite:before, .ion-android-favorite-outline:before, .ion-android-film:before, .ion-android-folder:before, .ion-android-folder-open:before, .ion-android-funnel:before, .ion-android-globe:before, .ion-android-hand:before, .ion-android-hangout:before, .ion-android-happy:before, .ion-android-home:before, .ion-android-image:before, .ion-android-laptop:before, .ion-android-list:before, .ion-android-locate:before, .ion-android-lock:before, .ion-android-mail:before, .ion-android-map:before, .ion-android-menu:before, .ion-android-microphone:before, .ion-android-microphone-off:before, .ion-android-more-horizontal:before, .ion-android-more-vertical:before, .ion-android-navigate:before, .ion-android-notifications:before, .ion-android-notifications-none:before, .ion-android-notifications-off:before, .ion-android-open:before, .ion-android-options:before, .ion-android-people:before, .ion-android-person:before, .ion-android-person-add:before, .ion-android-phone-landscape:before, .ion-android-phone-portrait:before, .ion-android-pin:before, .ion-android-plane:before, .ion-android-playstore:before, .ion-android-print:before, .ion-android-radio-button-off:before, .ion-android-radio-button-on:before, .ion-android-refresh:before, .ion-android-remove:before, .ion-android-remove-circle:before, .ion-android-restaurant:before, .ion-android-sad:before, .ion-android-search:before, .ion-android-send:before, .ion-android-settings:before, .ion-android-share:before, .ion-android-share-alt:before, .ion-android-star:before, .ion-android-star-half:before, .ion-android-star-outline:before, .ion-android-stopwatch:before, .ion-android-subway:before, .ion-android-sunny:before, .ion-android-sync:before, .ion-android-textsms:before, .ion-android-time:before, .ion-android-train:before, .ion-android-unlock:before, .ion-android-upload:before, .ion-android-volume-down:before, .ion-android-volume-mute:before, .ion-android-volume-off:before, .ion-android-volume-up:before, .ion-android-walk:before, .ion-android-warning:before, .ion-android-watch:before, .ion-android-wifi:before, .ion-aperture:before, .ion-archive:before, .ion-arrow-down-a:before, .ion-arrow-down-b:before, .ion-arrow-down-c:before, .ion-arrow-expand:before, .ion-arrow-graph-down-left:before, .ion-arrow-graph-down-right:before, .ion-arrow-graph-up-left:before, .ion-arrow-graph-up-right:before, .ion-arrow-left-a:before, .ion-arrow-left-b:before, .ion-arrow-left-c:before, .ion-arrow-move:before, .ion-arrow-resize:before, .ion-arrow-return-left:before, .ion-arrow-return-right:before, .ion-arrow-right-a:before, .ion-arrow-right-b:before, .ion-arrow-right-c:before, .ion-arrow-shrink:before, .ion-arrow-swap:before, .ion-arrow-up-a:before, .ion-arrow-up-b:before, .ion-arrow-up-c:before, .ion-asterisk:before, .ion-at:before, .ion-backspace:before, .ion-backspace-outline:before, .ion-bag:before, .ion-battery-charging:before, .ion-battery-empty:before, .ion-battery-full:before, .ion-battery-half:before, .ion-battery-low:before, .ion-beaker:before, .ion-beer:before, .ion-bluetooth:before, .ion-bonfire:before, .ion-bookmark:before, .ion-bowtie:before, .ion-briefcase:before, .ion-bug:before, .ion-calculator:before, .ion-calendar:before, .ion-camera:before, .ion-card:before, .ion-cash:before, .ion-chatbox:before, .ion-chatbox-working:before, .ion-chatboxes:before, .ion-chatbubble:before, .ion-chatbubble-working:before, .ion-chatbubbles:before, .ion-checkmark:before, .ion-checkmark-circled:before, .ion-checkmark-round:before, .ion-chevron-down:before, .ion-chevron-left:before, .ion-chevron-right:before, .ion-chevron-up:before, .ion-clipboard:before, .ion-clock:before, .ion-close:before, .ion-close-circled:before, .ion-close-round:before, .ion-closed-captioning:before, .ion-cloud:before, .ion-code:before, .ion-code-download:before, .ion-code-working:before, .ion-coffee:before, .ion-compass:before, .ion-compose:before, .ion-connection-bars:before, .ion-contrast:before, .ion-crop:before, .ion-cube:before, .ion-disc:before, .ion-document:before, .ion-document-text:before, .ion-drag:before, .ion-earth:before, .ion-easel:before, .ion-edit:before, .ion-egg:before, .ion-eject:before, .ion-email:before, .ion-email-unread:before, .ion-erlenmeyer-flask:before, .ion-erlenmeyer-flask-bubbles:before, .ion-eye:before, .ion-eye-disabled:before, .ion-female:before, .ion-filing:before, .ion-film-marker:before, .ion-fireball:before, .ion-flag:before, .ion-flame:before, .ion-flash:before, .ion-flash-off:before, .ion-folder:before, .ion-fork:before, .ion-fork-repo:before, .ion-forward:before, .ion-funnel:before, .ion-gear-a:before, .ion-gear-b:before, .ion-grid:before, .ion-hammer:before, .ion-happy:before, .ion-happy-outline:before, .ion-headphone:before, .ion-heart:before, .ion-heart-broken:before, .ion-help:before, .ion-help-buoy:before, .ion-help-circled:before, .ion-home:before, .ion-icecream:before, .ion-image:before, .ion-images:before, .ion-information:before, .ion-information-circled:before, .ion-ionic:before, .ion-ios-alarm:before, .ion-ios-alarm-outline:before, .ion-ios-albums:before, .ion-ios-albums-outline:before, .ion-ios-americanfootball:before, .ion-ios-americanfootball-outline:before, .ion-ios-analytics:before, .ion-ios-analytics-outline:before, .ion-ios-arrow-back:before, .ion-ios-arrow-down:before, .ion-ios-arrow-forward:before, .ion-ios-arrow-left:before, .ion-ios-arrow-right:before, .ion-ios-arrow-thin-down:before, .ion-ios-arrow-thin-left:before, .ion-ios-arrow-thin-right:before, .ion-ios-arrow-thin-up:before, .ion-ios-arrow-up:before, .ion-ios-at:before, .ion-ios-at-outline:before, .ion-ios-barcode:before, .ion-ios-barcode-outline:before, .ion-ios-baseball:before, .ion-ios-baseball-outline:before, .ion-ios-basketball:before, .ion-ios-basketball-outline:before, .ion-ios-bell:before, .ion-ios-bell-outline:before, .ion-ios-body:before, .ion-ios-body-outline:before, .ion-ios-bolt:before, .ion-ios-bolt-outline:before, .ion-ios-book:before, .ion-ios-book-outline:before, .ion-ios-bookmarks:before, .ion-ios-bookmarks-outline:before, .ion-ios-box:before, .ion-ios-box-outline:before, .ion-ios-briefcase:before, .ion-ios-briefcase-outline:before, .ion-ios-browsers:before, .ion-ios-browsers-outline:before, .ion-ios-calculator:before, .ion-ios-calculator-outline:before, .ion-ios-calendar:before, .ion-ios-calendar-outline:before, .ion-ios-camera:before, .ion-ios-camera-outline:before, .ion-ios-cart:before, .ion-ios-cart-outline:before, .ion-ios-chatboxes:before, .ion-ios-chatboxes-outline:before, .ion-ios-chatbubble:before, .ion-ios-chatbubble-outline:before, .ion-ios-checkmark:before, .ion-ios-checkmark-empty:before, .ion-ios-checkmark-outline:before, .ion-ios-circle-filled:before, .ion-ios-circle-outline:before, .ion-ios-clock:before, .ion-ios-clock-outline:before, .ion-ios-close:before, .ion-ios-close-empty:before, .ion-ios-close-outline:before, .ion-ios-cloud:before, .ion-ios-cloud-download:before, .ion-ios-cloud-download-outline:before, .ion-ios-cloud-outline:before, .ion-ios-cloud-upload:before, .ion-ios-cloud-upload-outline:before, .ion-ios-cloudy:before, .ion-ios-cloudy-night:before, .ion-ios-cloudy-night-outline:before, .ion-ios-cloudy-outline:before, .ion-ios-cog:before, .ion-ios-cog-outline:before, .ion-ios-color-filter:before, .ion-ios-color-filter-outline:before, .ion-ios-color-wand:before, .ion-ios-color-wand-outline:before, .ion-ios-compose:before, .ion-ios-compose-outline:before, .ion-ios-contact:before, .ion-ios-contact-outline:before, .ion-ios-copy:before, .ion-ios-copy-outline:before, .ion-ios-crop:before, .ion-ios-crop-strong:before, .ion-ios-download:before, .ion-ios-download-outline:before, .ion-ios-drag:before, .ion-ios-email:before, .ion-ios-email-outline:before, .ion-ios-eye:before, .ion-ios-eye-outline:before, .ion-ios-fastforward:before, .ion-ios-fastforward-outline:before, .ion-ios-filing:before, .ion-ios-filing-outline:before, .ion-ios-film:before, .ion-ios-film-outline:before, .ion-ios-flag:before, .ion-ios-flag-outline:before, .ion-ios-flame:before, .ion-ios-flame-outline:before, .ion-ios-flask:before, .ion-ios-flask-outline:before, .ion-ios-flower:before, .ion-ios-flower-outline:before, .ion-ios-folder:before, .ion-ios-folder-outline:before, .ion-ios-football:before, .ion-ios-football-outline:before, .ion-ios-game-controller-a:before, .ion-ios-game-controller-a-outline:before, .ion-ios-game-controller-b:before, .ion-ios-game-controller-b-outline:before, .ion-ios-gear:before, .ion-ios-gear-outline:before, .ion-ios-glasses:before, .ion-ios-glasses-outline:before, .ion-ios-grid-view:before, .ion-ios-grid-view-outline:before, .ion-ios-heart:before, .ion-ios-heart-outline:before, .ion-ios-help:before, .ion-ios-help-empty:before, .ion-ios-help-outline:before, .ion-ios-home:before, .ion-ios-home-outline:before, .ion-ios-infinite:before, .ion-ios-infinite-outline:before, .ion-ios-information:before, .ion-ios-information-empty:before, .ion-ios-information-outline:before, .ion-ios-ionic-outline:before, .ion-ios-keypad:before, .ion-ios-keypad-outline:before, .ion-ios-lightbulb:before, .ion-ios-lightbulb-outline:before, .ion-ios-list:before, .ion-ios-list-outline:before, .ion-ios-location:before, .ion-ios-location-outline:before, .ion-ios-locked:before, .ion-ios-locked-outline:before, .ion-ios-loop:before, .ion-ios-loop-strong:before, .ion-ios-medical:before, .ion-ios-medical-outline:before, .ion-ios-medkit:before, .ion-ios-medkit-outline:before, .ion-ios-mic:before, .ion-ios-mic-off:before, .ion-ios-mic-outline:before, .ion-ios-minus:before, .ion-ios-minus-empty:before, .ion-ios-minus-outline:before, .ion-ios-monitor:before, .ion-ios-monitor-outline:before, .ion-ios-moon:before, .ion-ios-moon-outline:before, .ion-ios-more:before, .ion-ios-more-outline:before, .ion-ios-musical-note:before, .ion-ios-musical-notes:before, .ion-ios-navigate:before, .ion-ios-navigate-outline:before, .ion-ios-nutrition:before, .ion-ios-nutrition-outline:before, .ion-ios-paper:before, .ion-ios-paper-outline:before, .ion-ios-paperplane:before, .ion-ios-paperplane-outline:before, .ion-ios-partlysunny:before, .ion-ios-partlysunny-outline:before, .ion-ios-pause:before, .ion-ios-pause-outline:before, .ion-ios-paw:before, .ion-ios-paw-outline:before, .ion-ios-people:before, .ion-ios-people-outline:before, .ion-ios-person:before, .ion-ios-person-outline:before, .ion-ios-personadd:before, .ion-ios-personadd-outline:before, .ion-ios-photos:before, .ion-ios-photos-outline:before, .ion-ios-pie:before, .ion-ios-pie-outline:before, .ion-ios-pint:before, .ion-ios-pint-outline:before, .ion-ios-play:before, .ion-ios-play-outline:before, .ion-ios-plus:before, .ion-ios-plus-empty:before, .ion-ios-plus-outline:before, .ion-ios-pricetag:before, .ion-ios-pricetag-outline:before, .ion-ios-pricetags:before, .ion-ios-pricetags-outline:before, .ion-ios-printer:before, .ion-ios-printer-outline:before, .ion-ios-pulse:before, .ion-ios-pulse-strong:before, .ion-ios-rainy:before, .ion-ios-rainy-outline:before, .ion-ios-recording:before, .ion-ios-recording-outline:before, .ion-ios-redo:before, .ion-ios-redo-outline:before, .ion-ios-refresh:before, .ion-ios-refresh-empty:before, .ion-ios-refresh-outline:before, .ion-ios-reload:before, .ion-ios-reverse-camera:before, .ion-ios-reverse-camera-outline:before, .ion-ios-rewind:before, .ion-ios-rewind-outline:before, .ion-ios-rose:before, .ion-ios-rose-outline:before, .ion-ios-search:before, .ion-ios-search-strong:before, .ion-ios-settings:before, .ion-ios-settings-strong:before, .ion-ios-shuffle:before, .ion-ios-shuffle-strong:before, .ion-ios-skipbackward:before, .ion-ios-skipbackward-outline:before, .ion-ios-skipforward:before, .ion-ios-skipforward-outline:before, .ion-ios-snowy:before, .ion-ios-speedometer:before, .ion-ios-speedometer-outline:before, .ion-ios-star:before, .ion-ios-star-half:before, .ion-ios-star-outline:before, .ion-ios-stopwatch:before, .ion-ios-stopwatch-outline:before, .ion-ios-sunny:before, .ion-ios-sunny-outline:before, .ion-ios-telephone:before, .ion-ios-telephone-outline:before, .ion-ios-tennisball:before, .ion-ios-tennisball-outline:before, .ion-ios-thunderstorm:before, .ion-ios-thunderstorm-outline:before, .ion-ios-time:before, .ion-ios-time-outline:before, .ion-ios-timer:before, .ion-ios-timer-outline:before, .ion-ios-toggle:before, .ion-ios-toggle-outline:before, .ion-ios-trash:before, .ion-ios-trash-outline:before, .ion-ios-undo:before, .ion-ios-undo-outline:before, .ion-ios-unlocked:before, .ion-ios-unlocked-outline:before, .ion-ios-upload:before, .ion-ios-upload-outline:before, .ion-ios-videocam:before, .ion-ios-videocam-outline:before, .ion-ios-volume-high:before, .ion-ios-volume-low:before, .ion-ios-wineglass:before, .ion-ios-wineglass-outline:before, .ion-ios-world:before, .ion-ios-world-outline:before, .ion-ipad:before, .ion-iphone:before, .ion-ipod:before, .ion-jet:before, .ion-key:before, .ion-knife:before, .ion-laptop:before, .ion-leaf:before, .ion-levels:before, .ion-lightbulb:before, .ion-link:before, .ion-load-a:before, .ion-load-b:before, .ion-load-c:before, .ion-load-d:before, .ion-location:before, .ion-lock-combination:before, .ion-locked:before, .ion-log-in:before, .ion-log-out:before, .ion-loop:before, .ion-magnet:before, .ion-male:before, .ion-man:before, .ion-map:before, .ion-medkit:before, .ion-merge:before, .ion-mic-a:before, .ion-mic-b:before, .ion-mic-c:before, .ion-minus:before, .ion-minus-circled:before, .ion-minus-round:before, .ion-model-s:before, .ion-monitor:before, .ion-more:before, .ion-mouse:before, .ion-music-note:before, .ion-navicon:before, .ion-navicon-round:before, .ion-navigate:before, .ion-network:before, .ion-no-smoking:before, .ion-nuclear:before, .ion-outlet:before, .ion-paintbrush:before, .ion-paintbucket:before, .ion-paper-airplane:before, .ion-paperclip:before, .ion-pause:before, .ion-person:before, .ion-person-add:before, .ion-person-stalker:before, .ion-pie-graph:before, .ion-pin:before, .ion-pinpoint:before, .ion-pizza:before, .ion-plane:before, .ion-planet:before, .ion-play:before, .ion-playstation:before, .ion-plus:before, .ion-plus-circled:before, .ion-plus-round:before, .ion-podium:before, .ion-pound:before, .ion-power:before, .ion-pricetag:before, .ion-pricetags:before, .ion-printer:before, .ion-pull-request:before, .ion-qr-scanner:before, .ion-quote:before, .ion-radio-waves:before, .ion-record:before, .ion-refresh:before, .ion-reply:before, .ion-reply-all:before, .ion-ribbon-a:before, .ion-ribbon-b:before, .ion-sad:before, .ion-sad-outline:before, .ion-scissors:before, .ion-search:before, .ion-settings:before, .ion-share:before, .ion-shuffle:before, .ion-skip-backward:before, .ion-skip-forward:before, .ion-social-android:before, .ion-social-android-outline:before, .ion-social-angular:before, .ion-social-angular-outline:before, .ion-social-apple:before, .ion-social-apple-outline:before, .ion-social-bitcoin:before, .ion-social-bitcoin-outline:before, .ion-social-buffer:before, .ion-social-buffer-outline:before, .ion-social-chrome:before, .ion-social-chrome-outline:before, .ion-social-codepen:before, .ion-social-codepen-outline:before, .ion-social-css3:before, .ion-social-css3-outline:before, .ion-social-designernews:before, .ion-social-designernews-outline:before, .ion-social-dribbble:before, .ion-social-dribbble-outline:before, .ion-social-dropbox:before, .ion-social-dropbox-outline:before, .ion-social-euro:before, .ion-social-euro-outline:before, .ion-social-facebook:before, .ion-social-facebook-outline:before, .ion-social-foursquare:before, .ion-social-foursquare-outline:before, .ion-social-freebsd-devil:before, .ion-social-github:before, .ion-social-github-outline:before, .ion-social-google:before, .ion-social-google-outline:before, .ion-social-googleplus:before, .ion-social-googleplus-outline:before, .ion-social-hackernews:before, .ion-social-hackernews-outline:before, .ion-social-html5:before, .ion-social-html5-outline:before, .ion-social-instagram:before, .ion-social-instagram-outline:before, .ion-social-javascript:before, .ion-social-javascript-outline:before, .ion-social-linkedin:before, .ion-social-linkedin-outline:before, .ion-social-markdown:before, .ion-social-nodejs:before, .ion-social-octocat:before, .ion-social-pinterest:before, .ion-social-pinterest-outline:before, .ion-social-python:before, .ion-social-reddit:before, .ion-social-reddit-outline:before, .ion-social-rss:before, .ion-social-rss-outline:before, .ion-social-sass:before, .ion-social-skype:before, .ion-social-skype-outline:before, .ion-social-snapchat:before, .ion-social-snapchat-outline:before, .ion-social-tumblr:before, .ion-social-tumblr-outline:before, .ion-social-tux:before, .ion-social-twitch:before, .ion-social-twitch-outline:before, .ion-social-twitter:before, .ion-social-twitter-outline:before, .ion-social-usd:before, .ion-social-usd-outline:before, .ion-social-vimeo:before, .ion-social-vimeo-outline:before, .ion-social-whatsapp:before, .ion-social-whatsapp-outline:before, .ion-social-windows:before, .ion-social-windows-outline:before, .ion-social-wordpress:before, .ion-social-wordpress-outline:before, .ion-social-yahoo:before, .ion-social-yahoo-outline:before, .ion-social-yen:before, .ion-social-yen-outline:before, .ion-social-youtube:before, .ion-social-youtube-outline:before, .ion-soup-can:before, .ion-soup-can-outline:before, .ion-speakerphone:before, .ion-speedometer:before, .ion-spoon:before, .ion-star:before, .ion-stats-bars:before, .ion-steam:before, .ion-stop:before, .ion-thermometer:before, .ion-thumbsdown:before, .ion-thumbsup:before, .ion-toggle:before, .ion-toggle-filled:before, .ion-transgender:before, .ion-trash-a:before, .ion-trash-b:before, .ion-trophy:before, .ion-tshirt:before, .ion-tshirt-outline:before, .ion-umbrella:before, .ion-university:before, .ion-unlocked:before, .ion-upload:before, .ion-usb:before, .ion-videocamera:before, .ion-volume-high:before, .ion-volume-low:before, .ion-volume-medium:before, .ion-volume-mute:before, .ion-wand:before, .ion-waterdrop:before, .ion-wifi:before, .ion-wineglass:before, .ion-woman:before, .ion-wrench:before, .ion-xbox:before { display: inline-block; font-family: "Ionicons"; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; text-rendering: auto; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
+.ion, .ionicons, .ion-alert:before, .ion-alert-circled:before, .ion-android-add:before, .ion-android-add-circle:before, .ion-android-alarm-clock:before, .ion-android-alert:before, .ion-android-apps:before, .ion-android-archive:before, .ion-android-arrow-back:before, .ion-android-arrow-down:before, .ion-android-arrow-dropdown:before, .ion-android-arrow-dropdown-circle:before, .ion-android-arrow-dropleft:before, .ion-android-arrow-dropleft-circle:before, .ion-android-arrow-dropright:before, .ion-android-arrow-dropright-circle:before, .ion-android-arrow-dropup:before, .ion-android-arrow-dropup-circle:before, .ion-android-arrow-forward:before, .ion-android-arrow-up:before, .ion-android-attach:before, .ion-android-bar:before, .ion-android-bicycle:before, .ion-android-boat:before, .ion-android-bookmark:before, .ion-android-bulb:before, .ion-android-bus:before, .ion-android-calendar:before, .ion-android-call:before, .ion-android-camera:before, .ion-android-cancel:before, .ion-android-car:before, .ion-android-cart:before, .ion-android-chat:before, .ion-android-checkbox:before, .ion-android-checkbox-blank:before, .ion-android-checkbox-outline:before, .ion-android-checkbox-outline-blank:before, .ion-android-checkmark-circle:before, .ion-android-clipboard:before, .ion-android-close:before, .ion-android-cloud:before, .ion-android-cloud-circle:before, .ion-android-cloud-done:before, .ion-android-cloud-outline:before, .ion-android-color-palette:before, .ion-android-compass:before, .ion-android-contact:before, .ion-android-contacts:before, .ion-android-contract:before, .ion-android-create:before, .ion-android-delete:before, .ion-android-desktop:before, .ion-android-document:before, .ion-android-done:before, .ion-android-done-all:before, .ion-android-download:before, .ion-android-drafts:before, .ion-android-exit:before, .ion-android-expand:before, .ion-android-favorite:before, .ion-android-favorite-outline:before, .ion-android-film:before, .ion-android-folder:before, .ion-android-folder-open:before, .ion-android-funnel:before, .ion-android-globe:before, .ion-android-hand:before, .ion-android-hangout:before, .ion-android-happy:before, .ion-android-home:before, .ion-android-image:before, .ion-android-laptop:before, .ion-android-list:before, .ion-android-locate:before, .ion-android-lock:before, .ion-android-mail:before, .ion-android-map:before, .ion-android-menu:before, .ion-android-microphone:before, .ion-android-microphone-off:before, .ion-android-more-horizontal:before, .ion-android-more-vertical:before, .ion-android-navigate:before, .ion-android-notifications:before, .ion-android-notifications-none:before, .ion-android-notifications-off:before, .ion-android-open:before, .ion-android-options:before, .ion-android-people:before, .ion-android-person:before, .ion-android-person-add:before, .ion-android-phone-landscape:before, .ion-android-phone-portrait:before, .ion-android-pin:before, .ion-android-plane:before, .ion-android-playstore:before, .ion-android-print:before, .ion-android-radio-button-off:before, .ion-android-radio-button-on:before, .ion-android-refresh:before, .ion-android-remove:before, .ion-android-remove-circle:before, .ion-android-restaurant:before, .ion-android-sad:before, .ion-android-search:before, .ion-android-send:before, .ion-android-settings:before, .ion-android-share:before, .ion-android-share-alt:before, .ion-android-star:before, .ion-android-star-half:before, .ion-android-star-outline:before, .ion-android-stopwatch:before, .ion-android-subway:before, .ion-android-sunny:before, .ion-android-sync:before, .ion-android-textsms:before, .ion-android-time:before, .ion-android-train:before, .ion-android-unlock:before, .ion-android-upload:before, .ion-android-volume-down:before, .ion-android-volume-mute:before, .ion-android-volume-off:before, .ion-android-volume-up:before, .ion-android-walk:before, .ion-android-warning:before, .ion-android-watch:before, .ion-android-wifi:before, .ion-aperture:before, .ion-archive:before, .ion-arrow-down-a:before, .ion-arrow-down-b:before, .ion-arrow-down-c:before, .ion-arrow-expand:before, .ion-arrow-graph-down-left:before, .ion-arrow-graph-down-right:before, .ion-arrow-graph-up-left:before, .ion-arrow-graph-up-right:before, .ion-arrow-left-a:before, .ion-arrow-left-b:before, .ion-arrow-left-c:before, .ion-arrow-move:before, .ion-arrow-resize:before, .ion-arrow-return-left:before, .ion-arrow-return-right:before, .ion-arrow-right-a:before, .ion-arrow-right-b:before, .ion-arrow-right-c:before, .ion-arrow-shrink:before, .ion-arrow-swap:before, .ion-arrow-up-a:before, .ion-arrow-up-b:before, .ion-arrow-up-c:before, .ion-asterisk:before, .ion-at:before, .ion-backspace:before, .ion-backspace-outline:before, .ion-bag:before, .ion-battery-charging:before, .ion-battery-empty:before, .ion-battery-full:before, .ion-battery-half:before, .ion-battery-low:before, .ion-beaker:before, .ion-beer:before, .ion-bluetooth:before, .ion-bonfire:before, .ion-bookmark:before, .ion-bowtie:before, .ion-briefcase:before, .ion-bug:before, .ion-calculator:before, .ion-calendar:before, .ion-camera:before, .ion-card:before, .ion-cash:before, .ion-chatbox:before, .ion-chatbox-working:before, .ion-chatboxes:before, .ion-chatbubble:before, .ion-chatbubble-working:before, .ion-chatbubbles:before, .ion-checkmark:before, .ion-checkmark-circled:before, .ion-checkmark-round:before, .ion-chevron-down:before, .ion-chevron-left:before, .ion-chevron-right:before, .ion-chevron-up:before, .ion-clipboard:before, .ion-clock:before, .ion-close:before, .ion-close-circled:before, .ion-close-round:before, .ion-closed-captioning:before, .ion-cloud:before, .ion-code:before, .ion-code-download:before, .ion-code-working:before, .ion-coffee:before, .ion-compass:before, .ion-compose:before, .ion-connection-bars:before, .ion-contrast:before, .ion-crop:before, .ion-cube:before, .ion-disc:before, .ion-document:before, .ion-document-text:before, .ion-drag:before, .ion-earth:before, .ion-easel:before, .ion-edit:before, .ion-egg:before, .ion-eject:before, .ion-email:before, .ion-email-unread:before, .ion-erlenmeyer-flask:before, .ion-erlenmeyer-flask-bubbles:before, .ion-eye:before, .ion-eye-disabled:before, .ion-female:before, .ion-filing:before, .ion-film-marker:before, .ion-fireball:before, .ion-flag:before, .ion-flame:before, .ion-flash:before, .ion-flash-off:before, .ion-folder:before, .ion-fork:before, .ion-fork-repo:before, .ion-forward:before, .ion-funnel:before, .ion-gear-a:before, .ion-gear-b:before, .ion-grid:before, .ion-hammer:before, .ion-happy:before, .ion-happy-outline:before, .ion-headphone:before, .ion-heart:before, .ion-heart-broken:before, .ion-help:before, .ion-help-buoy:before, .ion-help-circled:before, .ion-home:before, .ion-icecream:before, .ion-image:before, .ion-images:before, .ion-information:before, .ion-information-circled:before, .ion-ionic:before, .ion-ios-alarm:before, .ion-ios-alarm-outline:before, .ion-ios-albums:before, .ion-ios-albums-outline:before, .ion-ios-americanfootball:before, .ion-ios-americanfootball-outline:before, .ion-ios-analytics:before, .ion-ios-analytics-outline:before, .ion-ios-arrow-back:before, .ion-ios-arrow-down:before, .ion-ios-arrow-forward:before, .ion-ios-arrow-left:before, .ion-ios-arrow-right:before, .ion-ios-arrow-thin-down:before, .ion-ios-arrow-thin-left:before, .ion-ios-arrow-thin-right:before, .ion-ios-arrow-thin-up:before, .ion-ios-arrow-up:before, .ion-ios-at:before, .ion-ios-at-outline:before, .ion-ios-barcode:before, .ion-ios-barcode-outline:before, .ion-ios-baseball:before, .ion-ios-baseball-outline:before, .ion-ios-basketball:before, .ion-ios-basketball-outline:before, .ion-ios-bell:before, .ion-ios-bell-outline:before, .ion-ios-body:before, .ion-ios-body-outline:before, .ion-ios-bolt:before, .ion-ios-bolt-outline:before, .ion-ios-book:before, .ion-ios-book-outline:before, .ion-ios-bookmarks:before, .ion-ios-bookmarks-outline:before, .ion-ios-box:before, .ion-ios-box-outline:before, .ion-ios-briefcase:before, .ion-ios-briefcase-outline:before, .ion-ios-browsers:before, .ion-ios-browsers-outline:before, .ion-ios-calculator:before, .ion-ios-calculator-outline:before, .ion-ios-calendar:before, .ion-ios-calendar-outline:before, .ion-ios-camera:before, .ion-ios-camera-outline:before, .ion-ios-cart:before, .ion-ios-cart-outline:before, .ion-ios-chatboxes:before, .ion-ios-chatboxes-outline:before, .ion-ios-chatbubble:before, .ion-ios-chatbubble-outline:before, .ion-ios-checkmark:before, .ion-ios-checkmark-empty:before, .ion-ios-checkmark-outline:before, .ion-ios-circle-filled:before, .ion-ios-circle-outline:before, .ion-ios-clock:before, .ion-ios-clock-outline:before, .ion-ios-close:before, .ion-ios-close-empty:before, .ion-ios-close-outline:before, .ion-ios-cloud:before, .ion-ios-cloud-download:before, .ion-ios-cloud-download-outline:before, .ion-ios-cloud-outline:before, .ion-ios-cloud-upload:before, .ion-ios-cloud-upload-outline:before, .ion-ios-cloudy:before, .ion-ios-cloudy-night:before, .ion-ios-cloudy-night-outline:before, .ion-ios-cloudy-outline:before, .ion-ios-cog:before, .ion-ios-cog-outline:before, .ion-ios-color-filter:before, .ion-ios-color-filter-outline:before, .ion-ios-color-wand:before, .ion-ios-color-wand-outline:before, .ion-ios-compose:before, .ion-ios-compose-outline:before, .ion-ios-contact:before, .ion-ios-contact-outline:before, .ion-ios-copy:before, .ion-ios-copy-outline:before, .ion-ios-crop:before, .ion-ios-crop-strong:before, .ion-ios-download:before, .ion-ios-download-outline:before, .ion-ios-drag:before, .ion-ios-email:before, .ion-ios-email-outline:before, .ion-ios-eye:before, .ion-ios-eye-outline:before, .ion-ios-fastforward:before, .ion-ios-fastforward-outline:before, .ion-ios-filing:before, .ion-ios-filing-outline:before, .ion-ios-film:before, .ion-ios-film-outline:before, .ion-ios-flag:before, .ion-ios-flag-outline:before, .ion-ios-flame:before, .ion-ios-flame-outline:before, .ion-ios-flask:before, .ion-ios-flask-outline:before, .ion-ios-flower:before, .ion-ios-flower-outline:before, .ion-ios-folder:before, .ion-ios-folder-outline:before, .ion-ios-football:before, .ion-ios-football-outline:before, .ion-ios-game-controller-a:before, .ion-ios-game-controller-a-outline:before, .ion-ios-game-controller-b:before, .ion-ios-game-controller-b-outline:before, .ion-ios-gear:before, .ion-ios-gear-outline:before, .ion-ios-glasses:before, .ion-ios-glasses-outline:before, .ion-ios-grid-view:before, .ion-ios-grid-view-outline:before, .ion-ios-heart:before, .ion-ios-heart-outline:before, .ion-ios-help:before, .ion-ios-help-empty:before, .ion-ios-help-outline:before, .ion-ios-home:before, .ion-ios-home-outline:before, .ion-ios-infinite:before, .ion-ios-infinite-outline:before, .ion-ios-information:before, .ion-ios-information-empty:before, .ion-ios-information-outline:before, .ion-ios-ionic-outline:before, .ion-ios-keypad:before, .ion-ios-keypad-outline:before, .ion-ios-lightbulb:before, .ion-ios-lightbulb-outline:before, .ion-ios-list:before, .ion-ios-list-outline:before, .ion-ios-location:before, .ion-ios-location-outline:before, .ion-ios-locked:before, .ion-ios-locked-outline:before, .ion-ios-loop:before, .ion-ios-loop-strong:before, .ion-ios-medical:before, .ion-ios-medical-outline:before, .ion-ios-medkit:before, .ion-ios-medkit-outline:before, .ion-ios-mic:before, .ion-ios-mic-off:before, .ion-ios-mic-outline:before, .ion-ios-minus:before, .ion-ios-minus-empty:before, .ion-ios-minus-outline:before, .ion-ios-monitor:before, .ion-ios-monitor-outline:before, .ion-ios-moon:before, .ion-ios-moon-outline:before, .ion-ios-more:before, .ion-ios-more-outline:before, .ion-ios-musical-note:before, .ion-ios-musical-notes:before, .ion-ios-navigate:before, .ion-ios-navigate-outline:before, .ion-ios-nutrition:before, .ion-ios-nutrition-outline:before, .ion-ios-paper:before, .ion-ios-paper-outline:before, .ion-ios-paperplane:before, .ion-ios-paperplane-outline:before, .ion-ios-partlysunny:before, .ion-ios-partlysunny-outline:before, .ion-ios-pause:before, .ion-ios-pause-outline:before, .ion-ios-paw:before, .ion-ios-paw-outline:before, .ion-ios-people:before, .ion-ios-people-outline:before, .ion-ios-person:before, .ion-ios-person-outline:before, .ion-ios-personadd:before, .ion-ios-personadd-outline:before, .ion-ios-photos:before, .ion-ios-photos-outline:before, .ion-ios-pie:before, .ion-ios-pie-outline:before, .ion-ios-pint:before, .ion-ios-pint-outline:before, .ion-ios-play:before, .ion-ios-play-outline:before, .ion-ios-plus:before, .ion-ios-plus-empty:before, .ion-ios-plus-outline:before, .ion-ios-pricetag:before, .ion-ios-pricetag-outline:before, .ion-ios-pricetags:before, .ion-ios-pricetags-outline:before, .ion-ios-printer:before, .ion-ios-printer-outline:before, .ion-ios-pulse:before, .ion-ios-pulse-strong:before, .ion-ios-rainy:before, .ion-ios-rainy-outline:before, .ion-ios-recording:before, .ion-ios-recording-outline:before, .ion-ios-redo:before, .ion-ios-redo-outline:before, .ion-ios-refresh:before, .ion-ios-refresh-empty:before, .ion-ios-refresh-outline:before, .ion-ios-reload:before, .ion-ios-reverse-camera:before, .ion-ios-reverse-camera-outline:before, .ion-ios-rewind:before, .ion-ios-rewind-outline:before, .ion-ios-rose:before, .ion-ios-rose-outline:before, .ion-ios-search:before, .ion-ios-search-strong:before, .ion-ios-settings:before, .ion-ios-settings-strong:before, .ion-ios-shuffle:before, .ion-ios-shuffle-strong:before, .ion-ios-skipbackward:before, .ion-ios-skipbackward-outline:before, .ion-ios-skipforward:before, .ion-ios-skipforward-outline:before, .ion-ios-snowy:before, .ion-ios-speedometer:before, .ion-ios-speedometer-outline:before, .ion-ios-star:before, .ion-ios-star-half:before, .ion-ios-star-outline:before, .ion-ios-stopwatch:before, .ion-ios-stopwatch-outline:before, .ion-ios-sunny:before, .ion-ios-sunny-outline:before, .ion-ios-telephone:before, .ion-ios-telephone-outline:before, .ion-ios-tennisball:before, .ion-ios-tennisball-outline:before, .ion-ios-thunderstorm:before, .ion-ios-thunderstorm-outline:before, .ion-ios-time:before, .ion-ios-time-outline:before, .ion-ios-timer:before, .ion-ios-timer-outline:before, .ion-ios-toggle:before, .ion-ios-toggle-outline:before, .ion-ios-trash:before, .ion-ios-trash-outline:before, .ion-ios-undo:before, .ion-ios-undo-outline:before, .ion-ios-unlocked:before, .ion-ios-unlocked-outline:before, .ion-ios-upload:before, .ion-ios-upload-outline:before, .ion-ios-videocam:before, .ion-ios-videocam-outline:before, .ion-ios-volume-high:before, .ion-ios-volume-low:before, .ion-ios-wineglass:before, .ion-ios-wineglass-outline:before, .ion-ios-world:before, .ion-ios-world-outline:before, .ion-ipad:before, .ion-iphone:before, .ion-ipod:before, .ion-jet:before, .ion-key:before, .ion-knife:before, .ion-laptop:before, .ion-leaf:before, .ion-levels:before, .ion-lightbulb:before, .ion-link:before, .ion-load-a:before, .ion-load-b:before, .ion-load-c:before, .ion-load-d:before, .ion-location:before, .ion-lock-combination:before, .ion-locked:before, .ion-log-in:before, .ion-log-out:before, .ion-loop:before, .ion-magnet:before, .ion-male:before, .ion-man:before, .ion-map:before, .ion-medkit:before, .ion-merge:before, .ion-mic-a:before, .ion-mic-b:before, .ion-mic-c:before, .ion-minus:before, .ion-minus-circled:before, .ion-minus-round:before, .ion-model-s:before, .ion-monitor:before, .ion-more:before, .ion-mouse:before, .ion-music-note:before, .ion-navicon:before, .ion-navicon-round:before, .ion-navigate:before, .ion-network:before, .ion-no-smoking:before, .ion-nuclear:before, .ion-outlet:before, .ion-paintbrush:before, .ion-paintbucket:before, .ion-paper-airplane:before, .ion-paperclip:before, .ion-pause:before, .ion-person:before, .ion-person-add:before, .ion-person-stalker:before, .ion-pie-graph:before, .ion-pin:before, .ion-pinpoint:before, .ion-pizza:before, .ion-plane:before, .ion-planet:before, .ion-play:before, .ion-playstation:before, .ion-plus:before, .ion-plus-circled:before, .ion-plus-round:before, .ion-podium:before, .ion-pound:before, .ion-power:before, .ion-pricetag:before, .ion-pricetags:before, .ion-printer:before, .ion-pull-request:before, .ion-qr-scanner:before, .ion-quote:before, .ion-radio-waves:before, .ion-record:before, .ion-refresh:before, .ion-reply:before, .ion-reply-all:before, .ion-ribbon-a:before, .ion-ribbon-b:before, .ion-sad:before, .ion-sad-outline:before, .ion-scissors:before, .ion-search:before, .ion-settings:before, .ion-share:before, .ion-shuffle:before, .ion-skip-backward:before, .ion-skip-forward:before, .ion-social-android:before, .ion-social-android-outline:before, .ion-social-angular:before, .ion-social-angular-outline:before, .ion-social-apple:before, .ion-social-apple-outline:before, .ion-social-bitcoin:before, .ion-social-bitcoin-outline:before, .ion-social-buffer:before, .ion-social-buffer-outline:before, .ion-social-chrome:before, .ion-social-chrome-outline:before, .ion-social-codepen:before, .ion-social-codepen-outline:before, .ion-social-css3:before, .ion-social-css3-outline:before, .ion-social-designernews:before, .ion-social-designernews-outline:before, .ion-social-dribbble:before, .ion-social-dribbble-outline:before, .ion-social-dropbox:before, .ion-social-dropbox-outline:before, .ion-social-euro:before, .ion-social-euro-outline:before, .ion-social-facebook:before, .ion-social-facebook-outline:before, .ion-social-foursquare:before, .ion-social-foursquare-outline:before, .ion-social-freebsd-devil:before, .ion-social-github:before, .ion-social-github-outline:before, .ion-social-google:before, .ion-social-google-outline:before, .ion-social-googleplus:before, .ion-social-googleplus-outline:before, .ion-social-hackernews:before, .ion-social-hackernews-outline:before, .ion-social-html5:before, .ion-social-html5-outline:before, .ion-social-instagram:before, .ion-social-instagram-outline:before, .ion-social-javascript:before, .ion-social-javascript-outline:before, .ion-social-linkedin:before, .ion-social-linkedin-outline:before, .ion-social-markdown:before, .ion-social-nodejs:before, .ion-social-octocat:before, .ion-social-pinterest:before, .ion-social-pinterest-outline:before, .ion-social-python:before, .ion-social-reddit:before, .ion-social-reddit-outline:before, .ion-social-rss:before, .ion-social-rss-outline:before, .ion-social-sass:before, .ion-social-skype:before, .ion-social-skype-outline:before, .ion-social-snapchat:before, .ion-social-snapchat-outline:before, .ion-social-tumblr:before, .ion-social-tumblr-outline:before, .ion-social-tux:before, .ion-social-twitch:before, .ion-social-twitch-outline:before, .ion-social-twitter:before, .ion-social-twitter-outline:before, .ion-social-usd:before, .ion-social-usd-outline:before, .ion-social-vimeo:before, .ion-social-vimeo-outline:before, .ion-social-whatsapp:before, .ion-social-whatsapp-outline:before, .ion-social-windows:before, .ion-social-windows-outline:before, .ion-social-wordpress:before, .ion-social-wordpress-outline:before, .ion-social-yahoo:before, .ion-social-yahoo-outline:before, .ion-social-yen:before, .ion-social-yen-outline:before, .ion-social-youtube:before, .ion-social-youtube-outline:before, .ion-soup-can:before, .ion-soup-can-outline:before, .ion-speakerphone:before, .ion-speedometer:before, .ion-spoon:before, .ion-star:before, .ion-stats-bars:before, .ion-steam:before, .ion-stop:before, .ion-thermometer:before, .ion-thumbsdown:before, .ion-thumbsup:before, .ion-toggle:before, .ion-toggle-filled:before, .ion-transgender:before, .ion-trash-a:before, .ion-trash-b:before, .ion-trophy:before, .ion-tshirt:before, .ion-tshirt-outline:before, .ion-umbrella:before, .ion-university:before, .ion-unlocked:before, .ion-upload:before, .ion-usb:before, .ion-videocamera:before, .ion-volume-high:before, .ion-volume-low:before, .ion-volume-medium:before, .ion-volume-mute:before, .ion-wand:before, .ion-waterdrop:before, .ion-wifi:before, .ion-wineglass:before, .ion-woman:before, .ion-wrench:before, .ion-xbox:before {
+ display: inline-block;
+ font-family: "Ionicons";
+ speak: none;
+ font-style: normal;
+ font-weight: normal;
+ font-variant: normal;
+ text-transform: none;
+ text-rendering: auto;
+ line-height: 1;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+ pointer-events: none;
+}
.ion-alert:before { content: "\f101"; }
diff --git a/StoneIsland/platforms/ios/www/css/nav.css b/StoneIsland/platforms/ios/www/css/nav.css
index 705c0824..03e3fb39 100755
--- a/StoneIsland/platforms/ios/www/css/nav.css
+++ b/StoneIsland/platforms/ios/www/css/nav.css
@@ -27,6 +27,19 @@
.accessible #content {
position: absolute;
}
+
+.accessible #nav {
+ width: 100%;
+ -webkit-transform: translateZ(0) translateX(-100%);
+}
+.accessible .nav #nav {
+ width: 100%;
+ -webkit-transform: translateZ(0) translateX(0%);
+}
+.accessible .nav #content {
+ -webkit-transform: translateZ(0) translateX(100%);
+}
+
#nav .logo {
background-image: url(../img/small-logo.png);
background-repeat: no-repeat;
@@ -193,6 +206,9 @@ padding-bottom:0px;
align-items: center;
font-size: 1.063rem;
}
+#intro div span {
+ pointer-events: none;
+}
#intro #compass {
pointer-events: none;
background-image: url(../img/compass-logo.png);
@@ -274,6 +290,9 @@ padding-bottom:0px;
flex-direction: row;
justify-content: center;
}
+#header .burger:before {
+ pointer-events: none;
+}
#header .cart_rapper {
display: flex;
@@ -281,7 +300,7 @@ padding-bottom:0px;
align-items: flex-end;
position: relative;
float: right;
- width: 44px; height: 48px;
+ width: 48px; height: 48px;
}
#header .cart {
position: relative;
@@ -292,6 +311,7 @@ padding-bottom:0px;
background-image:url(../img/cart-box.png);
background-size:100%;
background-repeat:no-repeat;
+ pointer-events: none;
}
#header .cart .cart_count {
diff --git a/StoneIsland/platforms/ios/www/index.html b/StoneIsland/platforms/ios/www/index.html
index 568161e5..17289033 100755
--- a/StoneIsland/platforms/ios/www/index.html
+++ b/StoneIsland/platforms/ios/www/index.html
@@ -36,7 +36,7 @@
<div id="nav-row">
<!-- flex -->
- <span role="menu" class="menu">
+ <span role="region" class="menu">
<div class="logo" aria-label="Stone Island"></div>
<div class="close" role="button" aria-label="Close menu"></div>
<div role="menu" aria-label="Main Menu" class="main_menu">
@@ -91,10 +91,10 @@
</div>
<span class="social" role="list" aria-label="Social Links">
- <span role="menuitem" class="fb ion-social-facebook"></span>
- <span role="menuitem" class="insta ion-social-instagram-outline"></span>
- <span role="menuitem" class="tw ion-social-twitter"></span>
- <span role="menuitem" class="yt ion-social-youtube"></span>
+ <span role="menuitem" aria-label="Follow us on Facebook" class="fb ion-social-facebook"></span>
+ <span role="menuitem" aria-label="Follow us on Instagram" class="insta ion-social-instagram-outline"></span>
+ <span role="menuitem" aria-label="Follow us on Twitter" class="tw ion-social-twitter"></span>
+ <span role="menuitem" aria-label="Follow us on Youtube" class="yt ion-social-youtube"></span>
</span>
</div>
@@ -102,25 +102,25 @@
<div id="intro" role="menu" aria-label="Stone Island Home Screen">
<div id="compass"></div>
- <div role="menuitem" class="store">STORE</div>
- <div role="menuitem" class="hub">HUB</div>
- <div role="menuitem" class="story">STORY</div>
- <div role="menuitem" class="archive">ARCHIVE</div>
+ <div role="menuitem" class="store"><span>STORE</span></div>
+ <div role="menuitem" class="hub"><span>HUB</span></div>
+ <div role="menuitem" class="story"><span>STORY</span></div>
+ <div role="menuitem" class="archive"><span>ARCHIVE</span></div>
<div class="alert"></div>
<span class="latlng" role="note" aria-label="Your Latitude and Longitude">+40&deg; 58' 90.9" N&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;74&deg; 04' 46.3" W</span>
</div>
<div id="header" role="menubar" aria-label="Menu bar">
- <span role="link" aria-label="Show main menu" class="burger ion-android-menu"></span>
- <span role="link" aria-label="Homepage. Stone Island logo" class="logo"></span>
- <span role="link" aria-label="View cart" class="cart_rapper"><span class="cart"><span role="display" class="cart_count">0</span></span></span>
+ <div role="menuitem" aria-label="Show main menu" class="burger ion-android-menu"></div>
+ <div role="menuitem" aria-label="Homepage. Stone Island logo" class="logo"></div>
+ <div role="menuitem" aria-label="View cart" class="cart_rapper"><span class="cart"><span role="display" class="cart_count">0</span></span></div>
</div>
<!-- BLOGS ================================================ -->
<div id="story" role="region" aria-label="Stone Island Story">
<div class="scroll">
- <h1 aria-label="Current section: Stone Island Story">STORY</h1>
+ <h1 role="menuitem" aria-label="Current section: Stone Island Story">STORY</h1>
<img>
<ul class="links"></ul>
<div class="content">
@@ -135,7 +135,7 @@
<div id="hub" role="region" aria-label="Stone Island Hub">
<div class="scroll">
- <h1 aria-label="Current section: Stone Island Hub">HUB</h1>
+ <h1 role="menuitem" aria-label="Current section: Stone Island Hub">HUB</h1>
<div class="content">
<script type="text/html" class="template">
<div class="hub_item" data-id="{{id}}">
@@ -169,7 +169,7 @@
<div class="content">
<script type="text/html" class="template">
- <div class="image" aria-label="{{label}}" style="background-image:url({{image}})"></div>
+ <div class="image" role="img" aria-label="{{label}}" style="background-image:url({{image}})"></div>
<div class="text">
<div>
<h2>
@@ -194,21 +194,21 @@
</div>
</div>
<div class="heading">
- <h1 role="heading" aria-label="Current section: Stone Island Archive">ARCHIVE</h1>
+ <h1 role="menuitem" aria-label="Current section: Stone Island Archive">ARCHIVE</h1>
<div role="heading" class="subtitle" aria-label="1982 to 2015">'982'015</div>
</div>
</div>
<div id="privacy" role="region" aria-label="Privacy Policy" class="page">
<div class="scroll">
- <h1 aria-label="Current section: Privacy Policy">PRIVACY POLICY</h1>
+ <h1 role="menuitem" aria-label="Current section: Privacy Policy">PRIVACY POLICY</h1>
<div class="content"></div>
</div>
</div>
<div id="account_terms" role="region" aria-label="My Account Terms and Conditions of Use" class="page">
<div class="scroll">
- <h1 aria-label="Current section: My Account terms and conditions of use">MY ACCOUNT TERMS AND CONDITIONS OF USE</h1>
+ <h1 role="menuitem" aria-label="Current section: My Account terms and conditions of use">MY ACCOUNT TERMS AND CONDITIONS OF USE</h1>
<div class="content">
<h2>1. Services</h2>
<p>
@@ -264,21 +264,21 @@
<div id="terms" role="region" aria-label="Terms and Conditions" class="page">
<div class="scroll">
- <h1 aria-label="Current section: Terms and conditions">TERMS AND CONDITIONS</h1>
+ <h1 role="menuitem" aria-label="Current section: Terms and conditions">TERMS AND CONDITIONS</h1>
<div class="content"></div>
</div>
</div>
<div id="returns" role="region" aria-label="Return Policy" class="page">
<div class="scroll">
- <h1 aria-label="Current section: Return policy">RETURN POLICY</h1>
+ <h1 role="menuitem" aria-label="Current section: Return policy">RETURN POLICY</h1>
<div class="content"></div>
</div>
</div>
<div id="care" role="region" aria-label="Customer Care" class="page">
<div class="scroll">
- <h1 aria-label="Current section: Customer care">CUSTOMER CARE</h1>
+ <h1 role="menuitem" aria-label="Current section: Customer care">CUSTOMER CARE</h1>
<div class="content"></div>
</div>
</div>
@@ -288,7 +288,7 @@
<div id="collection" role="region" aria-label="Store">
<div class="scroll">
- <h1 aria-label="Current section: Store">LOADING...</h1>
+ <h1 role="menuitem" aria-label="Current section: Store">LOADING...</h1>
<div class="loader"></div>
<div class="content">
<script type="text/html" class="template">
@@ -302,9 +302,9 @@
<div id="search" role="search" aria-label="Search">
<div class="scroll">
- <h1 aria-label="Current section: Search">SEARCH</h1>
+ <h1 role="menuitem" aria-label="Current section: Search">SEARCH</h1>
<div class="form">
- <input type="text" class="q" placeholder="ENTER YOUR SEARCH">
+ <input type="text" role="textbox" class="q" placeholder="ENTER YOUR SEARCH">
</div>
</div>
</div>
@@ -377,17 +377,17 @@
<div id="login" role="region" aria-label="Log In">
<div class="scroll">
- <h1 aria-label="Current section: Log In">LOGIN</h1>
+ <h1 role="menuitem" aria-label="Current section: Log In">LOGIN</h1>
<div class="form">
<div class="container">
<div class="container-row">
<span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="login_email_address">Email Address</label>
- <input type="email" id="login_email_address" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="1">
+ <input type="email" role="textbox" id="login_email_address" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="1">
<span class='err'></span>
<label for="login_password">Password</label>
- <form><input type="password" id="login_password" name="Password" aria-placeholder="PASSWORD" required tabindex="2"></form>
+ <form><input type="password" role="textbox" id="login_password" name="Password" aria-placeholder="PASSWORD" required tabindex="2"></form>
<span class='err'></span>
</div>
<div class="container-fill">
@@ -407,7 +407,7 @@
<div id="logout" role="region" aria-label="You are now logged out">
<div class="scroll">
- <h1 aria-label="Current section: You are now Logged Out">LOGOUT</h1>
+ <h1 role="menuitem" aria-label="Current section: You are now Logged Out">LOGOUT</h1>
<div class="container">
<div class="container-fill">
<span class="container-message msg">
@@ -420,31 +420,31 @@
<div id="signup" role="region" aria-label="New User. Create an account">
<div class="scroll">
- <h1 aria-label="Current section: New User. Create an account">NEW USER</h1>
+ <h1 role="menuitem" aria-label="Current section: New User. Create an account">NEW USER</h1>
<div class="form">
<div class="container">
<div class="container-row">
<span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="signup_name">First Name</label>
- <input type="text" id="signup_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
+ <input type="text" role="textbox" id="signup_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
<span class='err'></span>
<label for="signup_surname">Last Name</label>
- <input type="text" id="signup_surname" name="Surname" aria-placeholder="LAST NAME" required tabindex="2">
+ <input type="text" role="textbox" id="signup_surname" name="Surname" aria-placeholder="LAST NAME" required tabindex="2">
<span class='err'></span>
<label for="signup_email">Email Address</label>
- <input type="email" id="signup_email" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="3">
+ <input type="email" role="textbox" id="signup_email" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="3">
<span class='err'></span>
<label for="signup_confirmemail">Confirm Email Address</label>
- <input type="email" id="signup_confirmemail" name="ConfirmEmail" aria-placeholder="CONFIRM EMAIL ADDRESS" required tabindex="4">
+ <input type="email" role="textbox" id="signup_confirmemail" name="ConfirmEmail" aria-placeholder="CONFIRM EMAIL ADDRESS" required tabindex="4">
<span class='err'></span>
- <label for="signup_birthday">Birthday (MM/DD/YYYY)</label>
+ <label for="signup_birthday">Birthday optional (MM/DD/YYYY)</label>
<div class="select-wrapper date-wrapper">
<span></span>
- <input type="date" id="signup_birthday" name="BirthDay" aria-label="Birthday" min="1900-01-01" aria-placeholder="BIRTHDAY (MM/DD/YYYY)" required tabindex="5">
+ <input type="date" id="signup_birthday" name="BirthDay" aria-label="Birthday" min="1900-01-01" aria-placeholder="BIRTHDAY OPTIONAL (MM/DD/YYYY)" required tabindex="5">
</div>
<span class='err'></span>
@@ -481,7 +481,7 @@
<div class="checkbox-row">
<div class="checkbox-toggle">
<input type="checkbox" id="checkbox-shopping-account-terms" aria-labelledby="checkbox-gdpr-terms-label" name="GdprTerms" value="true" required tabindex="10">
- <label for="checkbox-shopping-data-profiling"></label>
+ <label for="checkbox-shopping-account-terms"></label>
</div>
<label class="checkbox-caption" for="checkbox-shopping-account-terms" id="checkbox-gdpr-terms-label">
I ACCEPT MY ACCOUNT TERMS AND CONDITIONS OF USE *
@@ -504,27 +504,27 @@
<div id="profile" role="region" aria-label="My Profile">
<div class="scroll">
- <h1 aria-label="Current section: My Profile">MY PROFILE</h1>
+ <h1 role="menuitem" aria-label="Current section: My Profile">MY PROFILE</h1>
<div class="form">
<div class="container">
<div class="container-row">
<span class='err_heading'>There was a problem submitting the form. Please correct the form below and try again.</span>
<label for="profile_name">First Name</label>
- <input type="text" id="profile_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
+ <input type="text" role="textbox" id="profile_name" name="Name" aria-placeholder="FIRST NAME" required tabindex="1">
<span class='err'></span>
<label for="profile_surname">Last Name</label>
- <input type="text" id="profile_surname" name="Surname" aria-placeholder="LAST NAME" required tabindex="2">
+ <input type="text" role="textbox" id="profile_surname" name="Surname" aria-placeholder="LAST NAME" required tabindex="2">
<span class='err'></span>
<label for="profile_email">Email Address</label>
- <input type="email" id="profile_email" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="3">
+ <input type="email" role="textbox" id="profile_email" name="Email" aria-placeholder="EMAIL ADDRESS" required tabindex="3">
<span class='err'></span>
- <label for="profile_birthday">Birthday (MM/DD/YYYY)</label>
+ <label for="profile_birthday">Birthday optional (MM/DD/YYYY)</label>
<div class="select-wrapper date-wrapper">
<span></span>
- <input type="date" id="profile_birthday" name="BirthDay" aria-label="Birthday" min="1900-01-01" aria-placeholder="BIRTHDAY (MM/DD/YYYY)" required tabindex="5">
+ <input type="date" id="profile_birthday" name="BirthDay" aria-label="Birthday" min="1900-01-01" aria-placeholder="BIRTHDAY OPTIONAL (MM/DD/YYYY)" required tabindex="5">
</div>
<span class='err'></span>
@@ -578,7 +578,7 @@
<div id="shipping" role="region" aria-label="Address Book">
<div class="scroll">
- <h1 aria-label="Current section: Your address book">ADDRESS BOOK</h1>
+ <h1 role="menuitem" aria-label="Current section: Your address book">ADDRESS BOOK</h1>
<div class="form">
<div class="container">
<div class="container-row">
@@ -587,7 +587,7 @@
</div>
<div class="container-fill">
<div class="container-message">
- <span class="msg">
+ <span role="heading" class="msg">
* Your personal and payment<br>
information will always remain private
</span>
@@ -603,7 +603,7 @@
<div id="payment" role="region" aria-label="My Card">
<div class="scroll">
- <h1 aria-label="Current section: My Card">MY CARD</h1>
+ <h1 role="menuitem" aria-label="Current section: My Card">MY CARD</h1>
<div class="form">
<div class="container">
<div class="container-row">
@@ -613,7 +613,7 @@
</div>
<div class="container-fill">
<div class="container-message">
- <span class="msg">
+ <span role="heading" class="msg">
* Your personal and payment<br>
information will always remain private
</span>
@@ -629,7 +629,7 @@
<div id="settings" role="region" aria-label="Notifications">
<div class="scroll">
- <h1 aria-label="Current section: Notifications">NOTIFICATIONS</h1>
+ <h1 role="menuitem" aria-label="Current section: Notifications">NOTIFICATIONS</h1>
<div class="form">
<div class="toggle-container">
<div class="toggle-row">
@@ -659,7 +659,7 @@
<div id="orders" role="region" aria-label="My Orders">
<div class="scroll">
- <h1 aria-label="Current section: My orders">MY ORDERS</h1>
+ <h1 role="menuitem" aria-label="Current section: My orders">MY ORDERS</h1>
<div id="order_list">
<div class="list"></div>
<div class="empty">You have no orders.</div>
@@ -670,7 +670,6 @@
Details &gt;
</div>
<div class="txt">
-
<span class="text-date">{{date}}</span>
<span class="text-id">ORDER #: {{id}}</span>
<span class="text-total">ORDER TOTAL: {{total}}</span>
@@ -738,7 +737,7 @@
<!-- CART ================================================ -->
<div id="cart" role="region" aria-label="Your Cart">
- <h1 role="presentation">
+ <h1 role="menuitem" role="presentation">
<span class="full_msg" role="heading" aria-label="Current section: Your cart">
YOUR CART / <span class="itemcount"></span>
</span>
@@ -748,9 +747,9 @@
</h1>
<div class="steps">
- <span class="summary_step">SUMMARY</span>
- <span class="shipping_step">SHIPPING</span>
- <span class="payment_step">PAYMENT</span>
+ <div role="menuitem" class="summary_step"><span>SUMMARY</span></div>
+ <div role="menuitem" class="shipping_step"><span>SHIPPING</span></div>
+ <div role="menuitem" class="payment_step"><span>PAYMENT</span></div>
</div>
<div id="cart_summary" role="region" aria-label="Cart Summary">
@@ -761,38 +760,38 @@
<div class="rows">
<script type="text/html" class="template">
<div class="cart_item_image">
- <a href="#/store/{{code8}}" aria-label="{{cleantitle}}"><img src="{{image}}"></a>
+ <a href="#/store/{{code8}}" role="link" aria-label="{{cleantitle}}"><img src="{{image}}"></a>
</div>
<div class="cart_item_info">
- <span class="sku" aria-label="SKU">{{sku}}</span>
- <span class="title" aria-label="Product name: {{cleantitle}}">{{title}}</span>
- <span class="type" aria-label="Product type">{{type}}</span>
- <div class="meta">
- <div class="meta-size" aria-label="Size"><b>SIZE:</b> {{size}}</div>
- <div class="meta-color" aria-label="Color"><b>COLOR:</b> {{color}}</div>
- <div class="meta-quantity" aria-label="Quantity"><b>QUANTITY:</b> {{quantity}}</div>
+ <span class="sku">{{sku}}</span>
+ <span class="title">{{title}}</span>
+ <span class="type">{{type}}</span>
+ <div role="list" class="meta">
+ <div class="meta-size" role="listitem" aria-label="Size: {{size}}"><b>SIZE:</b> {{size}}</div>
+ <div class="meta-color" role="listitem" aria-label="Color: {{color}}"><b>COLOR:</b> {{color}}</div>
+ <div class="meta-quantity" role="listitem" aria-label="Quantity: {{quantity}]"><b>QUANTITY:</b> {{quantity}}</div>
</div>
</div>
<div class="cart_item_price">
- <span class="remove" aria-label="Remove item from your cart. Item to be removed: {{cleantitle}}"></span>
+ <span role="menuitem" class="remove" aria-label="Remove item from your cart. Item to be removed: {{cleantitle}}"></span>
<span class="price">{{price}}</span>
</div>
</script>
</div>
- <div class="cart-summary">
- <div class="cart-summary-row">
+ <div class="cart-summary" role="list">
+ <div class="cart-summary-row subtotal_row" role="listitem">
<span class="label">SUB TOTAL</span>
<span class="subtotal"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row" role="listitem" aria-label="Estimated shipping and handling $0">
<span class="label">ESTIMATED SHIPPING<br>& HANDLING</span>
<span class="shipping"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row" role="listitem" aria-label="Tax $0">
<span class="label">TAX</span>
<span class="tax"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row total_row" role="listitem">
<span class="label">TOTAL</span>
<span class="total"></span>
</div>
@@ -813,7 +812,7 @@
<div class="form">
<div class="dropdown-wrapper">
<div class="dropdown-title add_edit">add / edit</div>
- <div class="dropdown select_address">
+ <div role="menuitem" class="dropdown select_address">
ADDRESS
</div>
</div>
@@ -861,7 +860,7 @@
<div class="container-row">
<div class="container-fill">
<div class="container-message">
- <span class="msg">
+ <span role="heading" class="msg">
* Your personal and payment<br>
information will always remain private
</span>
@@ -902,7 +901,7 @@
<div class="address_dropdown dropdown-wrapper">
<div class="dropdown-title add_edit"> </div>
- <div class="dropdown select_address">
+ <div role="menuitem" class="dropdown select_address">
BILLING ADDRESS
</div>
</div>
@@ -927,7 +926,7 @@
<div class="cc_dropdown dropdown-wrapper">
<div class="dropdown-title add_edit"></div>
- <div class="dropdown select_address">
+ <div role="menuitem" class="dropdown select_address">
PAYMENT METHOD
</div>
</div>
@@ -950,19 +949,19 @@
<div class="cc"></div>
<div class="cc_confirm">
- <h3>PLEASE ENTER YOUR SECURITY CODE TO CONFIRM</h3>
+ <h3>PLEASE ENTER THE SECURITY CODE ON THE BACK OF YOUR CARD TO CONFIRM</h3>
<input type="number" name="CvvConfirm" placeholder="SECURITY CODE" required>
</div>
</div>
<div class="container-fill">
<div class="container-message">
- <span class="msg">
+ <span role="heading" class="msg">
* Your personal and payment<br>
information will always remain private
</span>
</div>
- <a class='privacy-link'> href="#/page/privacy">
+ <a class='privacy-link' role="link" href="#/page/privacy">
<div class="privacy-msg">
Consult our <u>PRIVACY POLICY</u> for further information.
</div>
@@ -975,21 +974,21 @@
<div id="cart_confirm" role="region" aria-label="Confirm your order">
<div class="scroll">
- <h1 aria-label="Current section: Confirm your cart">CONFIRM</h1>
+ <h1 role="menuitem" aria-label="Current section: Confirm your cart">CONFIRM</h1>
<div class="order_section">
<h2>ORDER SUMMARY</h2>
<div class="rows">
<script type="text/html" class="template">
- <div class="cart_item_info">
+ <div class="cart_item_info" row="table">
<span class="sku">{{sku}}</span>
<span class="title">{{title}}</span>
<span class="type">{{type}}</span>
<div class="meta">
- <div class="meta-size"><b>SIZE:</b> {{size}}</div>
- <div class="meta-color"><b>COLOR:</b> {{color}}</div>
- <div class="meta-quantity"><b>QUANTITY:</b> {{quantity}}</div>
+ <div class="meta-size" role="row" aria-label="Size: {{size}}"><b>SIZE:</b> {{size}}</div>
+ <div class="meta-color" role="row" aria-label="Color: {{color}}"><b>COLOR:</b> {{color}}</div>
+ <div class="meta-quantity" role="row" aria-label="Quantity: {{quantity}]"><b>QUANTITY:</b> {{quantity}}</div>
</div>
</div>
<div class="cart_item_price">
@@ -997,20 +996,20 @@
</div>
</script>
</div>
- <div class="cart-summary">
- <div class="cart-summary-row">
+ <div class="cart-summary" row="table">
+ <div class="cart-summary-row subtotal_row" role="row">
<span class="label">SUB TOTAL</span>
<span class="subtotal"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row" role="row" aria-label="Estimated shipping and handling $0">
<span class="label">ESTIMATED SHIPPING<br>& HANDLING</span>
<span class="shipping"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row" role="row" aria-label="Tax $0">
<span class="label">TAX</span>
<span class="tax"></span>
</div>
- <div class="cart-summary-row">
+ <div class="cart-summary-row total_row" role="row">
<span class="label">TOTAL</span>
<span class="total"></span>
</div>
@@ -1084,15 +1083,15 @@
</div>
<br><br>
For more information, please consult our
- <a href="#/page/privacy">Privacy Policy</a> or visit
- <a href="#" id="care-link">Customer Care</a>.
+ <a role="link" href="#/page/privacy">Privacy Policy</a> or visit
+ <a role="link" href="#" id="care-link">Customer Care</a>.
<br><br>
To continue to My Account we invite you to click accept. Otherwise you can continue to navigate as an unregistered user.
<br><br>
<div id="consent_error">Please note that if you do not consent to terms, you cannot use the app.</div>
<br><br>
- <button id="consent_proceed">PROCEED</button>
- <button id="consent_logout">LOG OUT</button>
+ <button role="menuitem" id="consent_proceed">PROCEED</button>
+ <button role="menuitem" id="consent_logout">LOG OUT</button>
</div>
<div id="selector">
@@ -1109,7 +1108,7 @@
<script type="text/html" id="creditcard_template">
<label for="creditcard_id_{{_id}}">Credit Card Number</label>
- <input type="number" id="creditcard_id_{{_id}}" name="Number" aria-placeholder="CREDIT CARD NUMBER" required>
+ <input type="number" role="textbox" id="creditcard_id_{{_id}}" name="Number" aria-placeholder="CREDIT CARD NUMBER" required tabindex="1">
<span class='err'></span>
<div class="half-input">
@@ -1120,7 +1119,7 @@
<div class="half-input">
<div class="select-wrapper">
<span></span>
- <select name="ExpirationMonth" id="cc_expiration_month_{{_id}}">
+ <select name="ExpirationMonth" id="cc_expiration_month_{{_id}}" tabindex="2">
<option value="NONE">EXPIRATION MONTH</option>
<option value="01">01</option>
<option value="02">02</option>
@@ -1138,7 +1137,7 @@
</div>
<div class="select-wrapper">
<span></span>
- <select name="ExpirationYear" id="cc_expiration_year_{{_id}}">
+ <select name="ExpirationYear" id="cc_expiration_year_{{_id}}" tabindex="3">
<option value="NONE">EXPIRATION YEAR</option>
<option value="2019">2019</option>
<option value="2020">2020</option>
@@ -1156,25 +1155,25 @@
</div>
</div>
<label for="cc_cvv_{{_id}}">Security Code</label>
- <input type="number" id="cc_cvv_{{_id}}" name="Cvv" aria-placeholder="SECURITY CODE" required>
+ <input type="number" id="cc_cvv_{{_id}}" name="Cvv" aria-placeholder="SECURITY CODE" required tabindex="4">
<span class='err'></span>
</script>
<script type="text/html" id="address_template">
<label for="address_name_{{_id}}">First Name</label>
- <input type="text" id="address_name_{{_id}}" name="Name" aria-placeholder="First Name">
+ <input type="text" role="textbox" id="address_name_{{_id}}" name="Name" aria-placeholder="First Name" tabindex="1">
<span class="err"></span>
<label for="address_surname_{{_id}}">Last Name</label>
- <input type="text" id="address_surname_{{_id}}" name="Surname" aria-placeholder="Last Name">
+ <input type="text" role="textbox" id="address_surname_{{_id}}" name="Surname" aria-placeholder="Last Name" tabindex="2">
<span class="err"></span>
<label for="address_address1_{{_id}}">Address line 1</label>
- <input type="text" id="address_address1_{{_id}}" name="Address1" aria-placeholder="Address Line 1">
+ <input type="text" role="textbox" id="address_address1_{{_id}}" name="Address1" aria-placeholder="Address Line 1" tabindex="3">
<span class="err"></span>
<label for="address_address2_{{_id}}">Address line 2</label>
- <input type="text" id="address_address2_{{_id}}" name="Address2" aria-placeholder="Address Line 2">
+ <input type="text" role="textbox" id="address_address2_{{_id}}" name="Address2" aria-placeholder="Address Line 2" tabindex="4">
<span class="err"></span>
<div class="half-input">
@@ -1183,10 +1182,10 @@
</div>
<div class="half-input">
- <input type="text" id="address_city_{{_id}}" name="City" aria-placeholder="City">
+ <input type="text" role="textbox" id="address_city_{{_id}}" name="City" aria-placeholder="City" tabindex="5">
<div class="select-wrapper">
<span></span>
- <select id="address_state_{{_id}}" name="Province">
+ <select id="address_state_{{_id}}" name="Province" tabindex="6">
{{PROVINCES}}
</select>
</div>
@@ -1198,19 +1197,19 @@
</div>
<div class="half-input">
- <input type="text" id="address_zip_{{_id}}" name="ZipCode" aria-placeholder="ZIP" required>
+ <input type="text" role="textbox" id="address_zip_{{_id}}" name="ZipCode" aria-placeholder="ZIP" required tabindex="7">
<div class="country-wrapper-static">
<span class="country-label">UNITED STATES</span>
<!--
<div id="country-select">
- <input type="text" name="Country" placeholder="UNITED STATES" required>
+ <input type="text" role="textbox" name="Country" placeholder="UNITED STATES" required>
</div>
-->
</div>
</div>
<label for="address_phone_{{_id}}">Phone Number</label>
- <input type="number" id="address_phone_{{_id}}" name="Phone" aria-placeholder="PHONE NUMBER">
+ <input type="number" id="address_phone_{{_id}}" name="Phone" aria-placeholder="PHONE NUMBER" tabindex="8">
<span class="err"></span>
<!--
<div class="checkbox-container save_as_default">
diff --git a/StoneIsland/platforms/ios/www/js/index.js b/StoneIsland/platforms/ios/www/js/index.js
index 42cec6f1..8574372d 100755
--- a/StoneIsland/platforms/ios/www/js/index.js
+++ b/StoneIsland/platforms/ios/www/js/index.js
@@ -22,7 +22,9 @@ var app = (function(){
app.bind = function(){
document.addEventListener('touchmove', function(e){ e.preventDefault() })
- FastClick.attach(document.body)
+ if (!app.accessible) {
+ FastClick.attach(document.body)
+ }
}
app.build = function(){
diff --git a/StoneIsland/platforms/ios/www/js/lib/auth/SignupView.js b/StoneIsland/platforms/ios/www/js/lib/auth/SignupView.js
index b16ff887..8ae47728 100755
--- a/StoneIsland/platforms/ios/www/js/lib/auth/SignupView.js
+++ b/StoneIsland/platforms/ios/www/js/lib/auth/SignupView.js
@@ -49,7 +49,7 @@ var SignupView = FormView.extend({
"Surname": "Please enter your last name.",
"Email": "Please enter a valid email address.",
"ConfirmEmail": "Please enter a valid email address.",
- "BirthDay": "Please enter your birthday. You must be 18 or older to use the Stone Island app.",
+ // "BirthDay": "Please enter your birthday. You must be 18 or older to use the Stone Island app.",
"Password": "Please enter your password.",
"Password2": "Please enter your password again.",
"DataProfiling": "You must consent to data profiling to use the Stone Island app.",
@@ -63,21 +63,40 @@ var SignupView = FormView.extend({
if (! data.Email.match("@")) { errors.push([ "Email", "Email address is not valid." ]) }
if (data.Email.toLowerCase() !== data.ConfirmEmail.toLowerCase()) { errors.push([ "ConfirmEmail", "Email addresses don't match." ]) }
// if (data.Gender === "NONE") { errors.push([ "Gender", "Please supply your gender." ]) }
- if (data.DataProfiling !== "true") { errors.push([ "DataProfiling", "You must consent to data profiling to use the Stone Island app." ]) }
- if (data.GdprTerms !== "true") { errors.push([ "GdprTerms", "You must agree to the Your My Account terms to use the Stone Island app." ]) }
+ if (data.DataProfiling !== "true") {
+ errors.push([ "DataProfiling", "You must consent to data profiling to use the Stone Island app." ])
+ setTimeout(function(){
+ this.$("#checkbox-shopping-data-profiling-label").closest(".checkbox-row").addClass("error_hilite")
+ }.bind(this), 10)
+ }
+ if (data.GdprTerms !== "true") {
+ errors.push([ "GdprTerms", "You must agree to the Your My Account terms to use the Stone Island app." ])
+ setTimeout(function(){
+ this.$("#checkbox-shopping-account-terms").closest(".checkbox-row").addClass("error_hilite")
+ }.bind(this), 10)
+ }
var now = new Date ()
- var year = now.getFullYear()
+ var year = now.getFullYear() - 18
if (! data.BirthDay) {
data.BirthDay = year + '-01-01'
}
// if (data.BirthDay.split('-')[0] || '2018')
var birthday = new Date (data.BirthDay)
- if (isNaN(birthday) || (new Date () - birthday) / (365*24*60*60*1000) < 18) {
- errors.push(['BirthDay', 'You must be 18 or older to use the Stone Island app.'])
+ if (isNaN(birthday)) {
+ data['BirthDay'] = '1970-01-01'
}
+ // if (isNaN(birthday) || (new Date () - birthday) / (365*24*60*60*1000) < 18) {
+ // errors.push(['BirthDay', 'You must be 18 or older to use the Stone Island app.'])
+ // }
data.YooxLetter = this.$("[name=YooxLetter]").prop("checked")
+ if (!data.YooxLetter) {
+ errors.push([ "YooxLetter", "You must consent to marketing to use the Stone Island app." ])
+ setTimeout(function(){
+ this.$("#checkbox-data-profiling").closest(".checkbox-row").addClass("error_hilite")
+ }.bind(this), 10)
+ }
},
finalize: function(data){
diff --git a/StoneIsland/platforms/ios/www/js/lib/blogs/HubView.js b/StoneIsland/platforms/ios/www/js/lib/blogs/HubView.js
index d3b15f77..0d59bcc8 100755
--- a/StoneIsland/platforms/ios/www/js/lib/blogs/HubView.js
+++ b/StoneIsland/platforms/ios/www/js/lib/blogs/HubView.js
@@ -91,7 +91,7 @@ var HubView = ScrollableView.extend({
})
gallery.on('staticClick', function(e){
var url = gallery.selectedElement.style.backgroundImage.replace(/url\(\"?/,"").replace(/\"?\)/,"")
- app.fullscreenViewer.show(url, url)
+ app.fullscreenViewer.show(url, url, stonewash(row.title))
})
$(".gallery-" + row.id).attr('aria-label', stonewash(row.title) + ". Image gallery, use the arrows to scroll.")
if (accessibility.voiceOver) {
@@ -99,7 +99,7 @@ var HubView = ScrollableView.extend({
$(".gallery-target-" + row.id).click(function(e){
e && e.preventDefault()
var url = gallery.selectedElement.style.backgroundImage.replace(/url\(\"?/,"").replace(/\"?\)/,"")
- app.fullscreenViewer.show(url, url)
+ app.fullscreenViewer.show(url, url, stonewash(row.title))
})
}
}
@@ -134,13 +134,13 @@ var HubView = ScrollableView.extend({
} else {
$(el).click(function(e){
e && e.preventDefault()
- app.fullscreenViewer.show(row.image[0].uri)
+ app.fullscreenViewer.show(row.image[0].uri, row.image[0].uri, stonewash(row.title) + ". Main image")
})
$(".gallery-" + row.id).attr('aria-label', stonewash(row.title) + ". Main image")
$(".gallery-target-" + row.id).attr('aria-label', stonewash(row.title) + ". Main image.")
$(".gallery-target-" + row.id).click(function(e){
e && e.preventDefault()
- app.fullscreenViewer.show(row.image[0].uri)
+ app.fullscreenViewer.show(row.image[0].uri, row.image[0].uri, stonewash(row.title) + ". Main image")
})
}
$t.find(".gallery-left").remove()
diff --git a/StoneIsland/platforms/ios/www/js/lib/blogs/StoryView.js b/StoneIsland/platforms/ios/www/js/lib/blogs/StoryView.js
index 71f1cc0c..19d5bac8 100755
--- a/StoneIsland/platforms/ios/www/js/lib/blogs/StoryView.js
+++ b/StoneIsland/platforms/ios/www/js/lib/blogs/StoryView.js
@@ -40,8 +40,8 @@ var StoryView = ScrollableView.extend({
.replace(/{{body}}/, row.body.replace(/\n/g, "<br>"))
var li = document.createElement("li")
li.dataset.id = row.id
- li.innerHTML = "<div>" + row.title + "</div>"
- li.setAttribute('role', "link")
+ li.innerHTML = "<div style='pointer-events: none'>" + row.title + "</div>"
+ li.setAttribute('role', "menuitem")
this.sections[row.id] = row
this.$links.append(li)
this.$content.append(t)
diff --git a/StoneIsland/platforms/ios/www/js/lib/cart/CartConfirm.js b/StoneIsland/platforms/ios/www/js/lib/cart/CartConfirm.js
index 6909dcc3..11d529ff 100755
--- a/StoneIsland/platforms/ios/www/js/lib/cart/CartConfirm.js
+++ b/StoneIsland/platforms/ios/www/js/lib/cart/CartConfirm.js
@@ -90,9 +90,9 @@ var CartConfirm = FormView.extend({
.replace(/{{sku}}/, num)
.replace(/{{title}}/, title)
.replace(/{{type}}/, type)
- .replace(/{{size}}/, size_name || "DEFAULT")
- .replace(/{{color}}/, color_name || "DEFAULT")
- .replace(/{{quantity}}/, 1)
+ .replace(/{{size}}/g, size_name || "DEFAULT")
+ .replace(/{{color}}/g, color_name || "DEFAULT")
+ .replace(/{{quantity}}/g, 1)
.replace(/{{price}}/, as_cash(details.Item.Price.DiscountedPrice))
$el.data("price", details.Item.Price.DiscountedPrice)
$el.html(t)
@@ -109,6 +109,8 @@ var CartConfirm = FormView.extend({
this.$shipping.html( as_cash(shipping_cost) )
this.$tax.html( as_cash(tax) )
this.$total.html( as_cash(total) )
+ this.$(".subtotal_row").attr('aria-label', "Subtotal " + as_cash(subtotal))
+ this.$(".total_row").attr('aria-label', "Total " + as_cash(total))
if (data.Receiver) {
var street = data.Receiver.StreetWithNumber.replace(/\n$/,"").replace("\n", ", ")
diff --git a/StoneIsland/platforms/ios/www/js/lib/cart/CartPayment.js b/StoneIsland/platforms/ios/www/js/lib/cart/CartPayment.js
index 40d08d9e..0e4c3b84 100755
--- a/StoneIsland/platforms/ios/www/js/lib/cart/CartPayment.js
+++ b/StoneIsland/platforms/ios/www/js/lib/cart/CartPayment.js
@@ -73,6 +73,10 @@ var CartPayment = FormView.extend({
this.address.disabled = this.address_list_mode
this.$address_form.toggle(! this.address_list_mode)
this.$address_list.toggle(this.address_list_mode)
+ this.scroller.refresh()
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
toggle_cc: function(state){
@@ -86,6 +90,10 @@ var CartPayment = FormView.extend({
this.$cc_form.toggle(! this.cc_list_mode)
this.$cc_list.toggle(this.cc_list_mode)
this.$cc_confirm.toggle(this.cc_list_mode)
+ this.scroller.refresh()
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
focus_on_cc: function(e){
@@ -104,8 +112,8 @@ var CartPayment = FormView.extend({
this.toggle_address( !! app.account.ccs.length )
this.toggle_cc( !! app.account.ccs.length )
- app.account.ccs.forEach(function(cc){
- var address_t = this.address_template.replace(/{{id}}/g, cc.Id)
+ app.account.ccs.forEach(function(cc, i){
+ var address_t = this.address_template.replace(/{{id}}/g, (cc.Id || i))
.replace(/{{checked}}/g, cc.IsDefault ? "checked" : "")
.replace(/{{name}}/g, (cc.Name + " " + cc.Surname).toUpperCase())
.replace(/{{address}}/g, cc.Address.replace(/\n$/,"").replace("\n", ", "))
@@ -113,7 +121,7 @@ var CartPayment = FormView.extend({
.replace(/{{state}}/g, cc.Province)
.replace(/{{zip}}/g, cc.ZipCode)
- var cc_t = this.cc_template.replace(/{{id}}/g, cc.Id)
+ var cc_t = this.cc_template.replace(/{{id}}/g, (cc.Id || i))
.replace(/{{checked}}/g, cc.IsDefault ? "checked" : "")
.replace(/{{number}}/g, cc['Number'])
.replace(/{{type}}/g, cc.Type.toUpperCase())
@@ -122,6 +130,9 @@ var CartPayment = FormView.extend({
this.$address_list.append(address_t)
this.$cc_list.append(cc_t)
}.bind(this))
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
finalize: function(data){
diff --git a/StoneIsland/platforms/ios/www/js/lib/cart/CartShipping.js b/StoneIsland/platforms/ios/www/js/lib/cart/CartShipping.js
index b5d6647b..157e75f5 100755
--- a/StoneIsland/platforms/ios/www/js/lib/cart/CartShipping.js
+++ b/StoneIsland/platforms/ios/www/js/lib/cart/CartShipping.js
@@ -43,8 +43,8 @@ var CartShipping = FormView.extend({
this.toggle_dropdown(false)
return
}
- app.account.addresses.forEach(function(address){
- var t = this.template.replace(/{{id}}/g, address.Id)
+ app.account.addresses.forEach(function(address, i){
+ var t = this.template.replace(/{{id}}/g, (address.Id || i))
.replace(/{{checked}}/g, address.IsDefault ? "checked" : "")
.replace(/{{name}}/g, (address.Name + " " + address.Surname).toUpperCase())
.replace(/{{address}}/g, address.Address.replace(/\n$/,"").replace("\n", ", "))
@@ -69,6 +69,9 @@ var CartShipping = FormView.extend({
$("#standard-shipping").prop("checked", cart_data.Cart.DeliveryMethod.Type == 1)
$("#express-shipping").prop("checked", cart_data.Cart.DeliveryMethod.Type == 2)
}
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
toggle_dropdown: function(state){
@@ -80,6 +83,10 @@ var CartShipping = FormView.extend({
this.address.disabled = this.list_mode
this.$address_form.toggle(! this.list_mode)
this.$address_list.toggle(this.list_mode)
+ this.scroller.refresh()
+ this.$("input,select").map(function(i) {
+ this.setAttribute('tabindex', i+1)
+ })
},
// sdk.cart.set_shipping_address
diff --git a/StoneIsland/platforms/ios/www/js/lib/cart/CartSummary.js b/StoneIsland/platforms/ios/www/js/lib/cart/CartSummary.js
index 51aa35ef..9637ae35 100755
--- a/StoneIsland/platforms/ios/www/js/lib/cart/CartSummary.js
+++ b/StoneIsland/platforms/ios/www/js/lib/cart/CartSummary.js
@@ -112,11 +112,11 @@ var CartSummary = ScrollableView.extend({
.replace(/{{sku}}/g, num)
.replace(/{{code8}}/g, data['Code8'])
.replace(/{{title}}/g, title)
- .replace(/{{cleantitle}}/g, stonewash(title))
+ .replace(/{{cleantitle}}/g, num + ' ' + stonewash(title) + ' ' + descriptions['MicroCategory'])
.replace(/{{type}}/, type)
- .replace(/{{size}}/, size_name)
- .replace(/{{color}}/, color_name)
- .replace(/{{quantity}}/, 1)
+ .replace(/{{size}}/g, size_name)
+ .replace(/{{color}}/g, color_name)
+ .replace(/{{quantity}}/g, 1)
.replace(/{{price}}/, as_cash(details.Item.Price.DiscountedPrice))
$el.html(t)
this.refreshScroller()
@@ -129,6 +129,7 @@ var CartSummary = ScrollableView.extend({
this.updateTotals()
+ this.$cart_empty.hide()
this.el.className = "full"
this.refreshScroller()
app.curtain.hide("loading")
@@ -149,6 +150,8 @@ var CartSummary = ScrollableView.extend({
this.$shipping.html( as_cash(shipping_cost) )
this.$tax.html( as_cash(tax) )
this.$total.html( as_cash(total) )
+ this.$(".subtotal_row").attr('aria-label', "Subtotal " + as_cash(subtotal))
+ this.$(".total_row").attr('aria-label', "Total " + as_cash(total))
},
empty: function(){
@@ -158,6 +161,7 @@ var CartSummary = ScrollableView.extend({
this.parent.$itemcount.html("0 ITEMS")
this.el.className = "empty"
this.parent.$steps.hide()
+ this.$cart_empty.show()
app.curtain.hide("loading")
},
diff --git a/StoneIsland/platforms/ios/www/js/lib/etc/accessibility.js b/StoneIsland/platforms/ios/www/js/lib/etc/accessibility.js
index c66143cc..a18ad5b3 100644
--- a/StoneIsland/platforms/ios/www/js/lib/etc/accessibility.js
+++ b/StoneIsland/platforms/ios/www/js/lib/etc/accessibility.js
@@ -73,5 +73,5 @@ var accessibility = (function() {
})()
function stonewash (s) {
- return s.replace(/'9/g, '19').replace(/'0/g, '20').replace(/_/g, ' ').replace(/-/g, ' - ').replace(/^[013456789][0-9]+/, '')
+ return s.replace(/'9/g, '19').replace(/'0/g, '20').replace(/_/g, ' ').replace(/-/g, ' - ')
}
diff --git a/StoneIsland/platforms/ios/www/js/lib/nav/NavView.js b/StoneIsland/platforms/ios/www/js/lib/nav/NavView.js
index a9a1938e..a6a39633 100755
--- a/StoneIsland/platforms/ios/www/js/lib/nav/NavView.js
+++ b/StoneIsland/platforms/ios/www/js/lib/nav/NavView.js
@@ -1,3 +1,5 @@
+var klassTimeout;
+
var NavView = View.extend({
el: "#nav",
@@ -52,14 +54,16 @@ var NavView = View.extend({
doneShowingNav = true
}, 800)
if (klass) {
- setTimeout(function(){
+ klassTimeout = setTimeout(function(){
this.addClass(klass)
}.bind(this), 500)
}
},
hide: function(){
- if (!doneShowingNav) return
+ if (!doneShowingNav) {
+ clearTimeout(klassTimeout)
+ }
$("body").removeClass("nav")
app.curtain.hide("dark")
},
diff --git a/StoneIsland/platforms/ios/www/js/lib/products/CollectionView.js b/StoneIsland/platforms/ios/www/js/lib/products/CollectionView.js
index d3343652..70bb22b4 100755
--- a/StoneIsland/platforms/ios/www/js/lib/products/CollectionView.js
+++ b/StoneIsland/platforms/ios/www/js/lib/products/CollectionView.js
@@ -194,9 +194,10 @@ var CollectionView = ScrollableView.extend({
append: function(item, is_single_product){
this.items[ item['Code8'] ] = item
+ console.log("TITLE: " + item['ModelNames'])
var t = this.template.replace(/{{image}}/, sdk.image(item['DefaultCode10'], is_single_product ? '13_f' : '11_f'))
.replace(/{{code8}}/, item['Code8'])
- .replace(/{{title}}/, stonewash(item['ModelNames']))
+ .replace(/{{title}}/g, stonewash(item['ModelNames'] + ' ' + item['MicroCategory']))
var $t = $(t)
if (app.store.ShowProductNameOnCollectionPage) {
var $title = $("<span>")
diff --git a/StoneIsland/platforms/ios/www/js/lib/products/GalleryView.js b/StoneIsland/platforms/ios/www/js/lib/products/GalleryView.js
index e84caa68..417b14c3 100755
--- a/StoneIsland/platforms/ios/www/js/lib/products/GalleryView.js
+++ b/StoneIsland/platforms/ios/www/js/lib/products/GalleryView.js
@@ -36,6 +36,7 @@ var GalleryView = View.extend({
valid_styles[style] = size
}
})
+ this.large_styles = large_styles
Object.keys(valid_styles).sort(sort_image_styles).forEach(function(style){
var id = valid_styles[style] + "_" + style
@@ -57,18 +58,14 @@ var GalleryView = View.extend({
contain: true,
draggable: true,
})
+ if (app.accessible) {
+ gallery.select(1, true, true)
+ }
- this.gallery.on('change', function(){
- var currentImage = this.gallery.selectedElement.style.backgroundImage.replace(/url\(\"?/,"").replace(/\"?\)/,"")
- var partz = currentImage.split("_")
- var head = partz[0]
- var size = partz[1]
- var tail = partz[2]
- var end_partz = tail.split(/\./)
- var style = end_partz[0]
- var label = YOOX_IMAGE_STYLE_LABELS[style] || "Image: Alternate view"
- $("#product .gallery-target").attr('aria-label', label)
- })
+ var last_style = 'f'
+ this.gallery.on('select', function(){
+ this.updateLabel()
+ }.bind(this))
this.gallery.on('staticClick', this.static_click.bind(this))
@@ -85,11 +82,39 @@ var GalleryView = View.extend({
var head = partz[0]
var size = partz[1]
var tail = partz[2]
- var end_partz = tail.split(/\./)
+ var end_partz = (tail || 'f').split(/\./)
var style = end_partz[0]
- var largest_size = large_styles[style]
+ var largest_size = this.large_styles[style]
+ var title = YOOX_IMAGE_STYLE_LABELS[style] || "Alternate view"
var hiresImage = [head, largest_size, tail].join("_")
- app.fullscreenViewer.show(currentImage, hiresImage)
+ // console.log(partz, style)
+ app.fullscreenViewer.show(currentImage, hiresImage, title)
+ },
+
+ animating: false,
+ previous: function(e){
+ this.gallery.previous()
+ this.updateLabel()
+ },
+ next: function(e){
+ this.gallery.next()
+ this.updateLabel()
+ },
+ updateLabel: function(){
+ var currentImage = this.gallery.selectedElement.style.backgroundImage.replace(/url\(\"?/,"").replace(/\"?\)/,"")
+ var partz = currentImage.split("_")
+ var head = partz[0]
+ var size = partz[1]
+ var tail = partz[2]
+ var end_partz = tail.split(/\./)
+ var style = end_partz[0]
+ if (style === this.last_style) {
+ style = 'z'
+ }
+ this.last_style = style
+ var label = YOOX_IMAGE_STYLE_LABELS[style] || "Image: Alternate view"
+ console.log("> new style: " + style)
+ $("#product .gallery-target").attr('aria-label', label)
},
touchstart: function(e){
diff --git a/StoneIsland/platforms/ios/www/js/lib/products/ProductView.js b/StoneIsland/platforms/ios/www/js/lib/products/ProductView.js
index f834b1c5..570024b6 100755
--- a/StoneIsland/platforms/ios/www/js/lib/products/ProductView.js
+++ b/StoneIsland/platforms/ios/www/js/lib/products/ProductView.js
@@ -74,10 +74,10 @@ var ProductView = ScrollableView.extend({
cache: {},
gallery_left: function(){
- app.product.gallery.gallery.previous()
+ app.product.gallery.previous()
},
gallery_right: function(){
- app.product.gallery.gallery.next()
+ app.product.gallery.next()
},
find: function(code, cb){
diff --git a/StoneIsland/platforms/ios/www/js/lib/view/Serializable.js b/StoneIsland/platforms/ios/www/js/lib/view/Serializable.js
index 08802fa9..0d638412 100755
--- a/StoneIsland/platforms/ios/www/js/lib/view/Serializable.js
+++ b/StoneIsland/platforms/ios/www/js/lib/view/Serializable.js
@@ -61,6 +61,7 @@ var SerializableView = View.extend({
focus_input: function(e){
$(e.currentTarget).removeClass("error_hilite")
+ $(e.currentTarget).closest(".checkbox-row").removeClass("error_hilite")
},
focus_date: function(e){
@@ -128,6 +129,7 @@ var SerializableView = View.extend({
// this.$msg.html(msgs.join("<br>"))
this.$msg.addClass('alert-notice')
if (app.view.scroller) {
+ app.view.scroller.refresh()
app.view.scroller.scrollTo(0, 0)
}
},