diff options
author | Adam T. Carpenter <atc@53hor.net> | 2020-12-27 09:37:15 -0500 |
---|---|---|
committer | Adam T. Carpenter <atc@53hor.net> | 2020-12-27 09:37:15 -0500 |
commit | 91b538c776071a7ae60adfa25bfcaccc0403896e (patch) | |
tree | 65278ac7ba6ab78ef55602bfdb895c7cab9ac488 /iridescence | |
parent | 335a9e3dfe2bb1dde3900018b01fdad6baad1595 (diff) | |
download | theglassyladies-91b538c776071a7ae60adfa25bfcaccc0403896e.tar.xz theglassyladies-91b538c776071a7ae60adfa25bfcaccc0403896e.zip |
Added care, privacy, faq, fixed custom order temporarily, fixed site
title
Diffstat (limited to 'iridescence')
-rw-r--r-- | iridescence/public/index.html | 2 | ||||
-rw-r--r-- | iridescence/src/App.vue | 33 | ||||
-rw-r--r-- | iridescence/src/api/dichroism.js | 2 | ||||
-rw-r--r-- | iridescence/src/components/Footer.vue | 10 | ||||
-rw-r--r-- | iridescence/src/components/Navbar.vue | 11 | ||||
-rw-r--r-- | iridescence/src/components/ProductSearch.vue | 5 | ||||
-rw-r--r-- | iridescence/src/components/admin/NewProduct.vue | 2 | ||||
-rw-r--r-- | iridescence/src/components/checkout/CheckoutForm.vue | 177 | ||||
-rw-r--r-- | iridescence/src/router/index.js | 27 | ||||
-rw-r--r-- | iridescence/src/views/About.vue | 8 | ||||
-rw-r--r-- | iridescence/src/views/Care.vue | 10 | ||||
-rw-r--r-- | iridescence/src/views/Faq.vue | 9 | ||||
-rw-r--r-- | iridescence/src/views/Privacy.vue | 494 |
13 files changed, 719 insertions, 71 deletions
diff --git a/iridescence/public/index.html b/iridescence/public/index.html index ae43440..709fc47 100644 --- a/iridescence/public/index.html +++ b/iridescence/public/index.html @@ -5,7 +5,7 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width,initial-scale=1.0" /> <link rel="icon" href="<%= BASE_URL %>favicon.ico" /> - <title><%= htmlWebpackPlugin.options.title %></title> + <title>The Glassy Ladies: Glass with Class!</title> </head> <body> <noscript> diff --git a/iridescence/src/App.vue b/iridescence/src/App.vue index 8e4e1ec..c6ac9a6 100644 --- a/iridescence/src/App.vue +++ b/iridescence/src/App.vue @@ -57,8 +57,39 @@ $scheme-main-bis: $gainsboro; /* Resizing */ $modal-content-width: 50em; -@import "../node_modules/bulma/bulma.sass"; +/* Import only what you need from Bulma */ +@import "../node_modules/bulma/sass/utilities/_all.sass"; +@import "../node_modules/bulma/sass/base/generic.sass"; +@import "../node_modules/bulma/sass/base/minireset.sass"; +@import "../node_modules/bulma/sass/elements/box.sass"; +@import "../node_modules/bulma/sass/elements/icon.sass"; +@import "../node_modules/bulma/sass/elements/button.sass"; +@import "../node_modules/bulma/sass/elements/container.sass"; +@import "../node_modules/bulma/sass/elements/content.sass"; +@import "../node_modules/bulma/sass/elements/image.sass"; +@import "../node_modules/bulma/sass/elements/progress.sass"; +@import "../node_modules/bulma/sass/elements/title.sass"; +@import "../node_modules/bulma/sass/form/shared.sass"; +@import "../node_modules/bulma/sass/form/shared.sass"; +@import "../node_modules/bulma/sass/form/input-textarea.sass"; +@import "../node_modules/bulma/sass/form/select.sass"; +@import "../node_modules/bulma/sass/form/file.sass"; +@import "../node_modules/bulma/sass/form/tools.sass"; +@import "../node_modules/bulma/sass/components/card.sass"; +@import "../node_modules/bulma/sass/components/dropdown.sass"; +@import "../node_modules/bulma/sass/components/level.sass"; +@import "../node_modules/bulma/sass/components/modal.sass"; +@import "../node_modules/bulma/sass/components/navbar.sass"; +@import "../node_modules/bulma/sass/components/breadcrumb.sass"; +@import "../node_modules/bulma/sass/grid/columns.sass"; +@import "../node_modules/bulma/sass/helpers/color.sass"; +@import "../node_modules/bulma/sass/helpers/flexbox.sass"; +@import "../node_modules/bulma/sass/helpers/typography.sass"; +@import "../node_modules/bulma/sass/helpers/visibility.sass"; +@import "../node_modules/bulma/sass/layout/section.sass"; +@import "../node_modules/bulma/sass/layout/footer.sass"; +/* Force footer to bottom of page */ #app { display: flex; min-height: 100vh; diff --git a/iridescence/src/api/dichroism.js b/iridescence/src/api/dichroism.js index c2cc93c..7da0c4f 100644 --- a/iridescence/src/api/dichroism.js +++ b/iridescence/src/api/dichroism.js @@ -3,7 +3,7 @@ import PhotoSet from "../models/photo_set"; import ApiError from "./error"; export default class Dichroism { - _base_addr = "http://localhost:8000/"; + _base_addr = "https://theglassyladies.com/api/"; async createPhoto(file) { const fd = new FormData(); diff --git a/iridescence/src/components/Footer.vue b/iridescence/src/components/Footer.vue index ac394c7..d41c4ce 100644 --- a/iridescence/src/components/Footer.vue +++ b/iridescence/src/components/Footer.vue @@ -28,7 +28,13 @@ </div> <div class="level-item has-text-centered"> - <p>© {{ year }} The Glassy Ladies, LLC</p> + <div class="content"> + <p>© {{ year }} The Glassy Ladies, LLC</p> + <p> + Experiencing issues? + <a href="mailto:webmaster@theglassyladies.com">Let us know.</a> + </p> + </div> </div> <div class="level-item has-text-centered"> <ul> @@ -50,7 +56,7 @@ class="iconify-inline" data-icon="mdi-monitor-eye" ></span> - <span>Privacy Policy</span> + <span>Privacy</span> </router-link></a > </li> diff --git a/iridescence/src/components/Navbar.vue b/iridescence/src/components/Navbar.vue index f9f99c2..4ad001f 100644 --- a/iridescence/src/components/Navbar.vue +++ b/iridescence/src/components/Navbar.vue @@ -19,11 +19,14 @@ <div :class="navMenu"> <div class="navbar-start"> <router-link to="/" class="navbar-item"> - Shop + Home + </router-link> + <router-link to="/faq" class="navbar-item"> + F.A.Q. + </router-link> + <router-link to="/care" class="navbar-item"> + Care & Handling </router-link> - <!--<router-link to="/about" class="navbar-item"> - About - </router-link>--> </div> <transition diff --git a/iridescence/src/components/ProductSearch.vue b/iridescence/src/components/ProductSearch.vue index 2a7a2e3..e02952a 100644 --- a/iridescence/src/components/ProductSearch.vue +++ b/iridescence/src/components/ProductSearch.vue @@ -30,7 +30,10 @@ <content class="has-text-centered" v-if="noResults"> <p> Couldn't find what you're looking for? - <a href="#">We do custom orders too!</a> + <a + href="mailto:liz@theglassyladies.com?subject=Custom Order Request&body=Please describe what you are looking for and we will be in touch." + >We do custom orders too!</a + > </p> </content> </div> diff --git a/iridescence/src/components/admin/NewProduct.vue b/iridescence/src/components/admin/NewProduct.vue index 3d2e1f2..a1d3304 100644 --- a/iridescence/src/components/admin/NewProduct.vue +++ b/iridescence/src/components/admin/NewProduct.vue @@ -1,6 +1,6 @@ <template> <div id="addNewProduct"> - <button class="button is-primary is-medium" @click="toggleModal"> + <button class="button is-primary is-medium is-rounded" @click="toggleModal"> + Add New </button> <transition diff --git a/iridescence/src/components/checkout/CheckoutForm.vue b/iridescence/src/components/checkout/CheckoutForm.vue index cf73149..482baec 100644 --- a/iridescence/src/components/checkout/CheckoutForm.vue +++ b/iridescence/src/components/checkout/CheckoutForm.vue @@ -1,6 +1,6 @@ <template> <div class="container"> - <form> + <form action="#"> <section class="section"> <h1 class="title">Customer Info</h1> <hr /> @@ -12,6 +12,7 @@ <div class="control has-icons-left"> <input + v-model="formData.firstName" id="firstName" class="input is-rounded" type="text" @@ -29,7 +30,12 @@ <label class="label">Last Name</label> <div class="control has-icons-left"> - <input class="input is-rounded" type="text" required /> + <input + v-model="formData.lastName" + class="input is-rounded" + type="text" + required + /> <span class="icon is-left"> <span class="iconify-inline" @@ -43,7 +49,12 @@ <label class="label">Email Address</label> <div class="control has-icons-left"> - <input class="input is-rounded" type="email" required /> + <input + v-model="formData.email" + class="input is-rounded" + type="email" + required + /> <span class="icon is-left"> <span class="iconify-inline" data-icon="mdi-email"></span> </span> @@ -55,6 +66,7 @@ <label class="label">Phone Number</label> <div class="control has-icons-left"> <input + v-model="formData.phone" class="input is-rounded" type="tel" pattern="[0-9]{10}" @@ -71,7 +83,7 @@ </div> <label class="checkbox"> - <input type="checkbox" /> + <input v-model="formData.sms" type="checkbox" /> <span class="iconify" data-icon="mdi-cellphone-android"></span> May we text order updates and questions to this number? </label> @@ -95,8 +107,10 @@ <div class="control has-icons-left"> <div class="select is-rounded"> - <select required> - <option selected>Virginia</option> + <select v-model="formData.state" required> + <option v-for="state in states" :key="state">{{ + state + }}</option> </select> </div> <span class="icon is-left"> @@ -104,12 +118,23 @@ </span> </div> </div> + <p class="help"> + If you are located outside of the United States, please + <a href="mailto:liz@theglassyladies.com" + >contact us directly regarding your order</a + > + </p> <div class="field"> <label class="label">Address</label> <div class="control has-icons-left"> - <input class="input is-rounded" type="text" required /> + <input + v-model="formData.address1" + class="input is-rounded" + type="text" + required + /> <span class="icon is-left"> <span class="iconify-inline" @@ -122,7 +147,11 @@ <label class="label">Address 2 (Optional)</label> <div class="control has-icons-left"> - <input class="input is-rounded" type="text" /> + <input + v-model="formData.address2" + class="input is-rounded" + type="text" + /> <span class="icon is-left"> <span class="iconify-inline" @@ -135,7 +164,12 @@ <div class="field"> <label class="label">City</label> <div class="control has-icons-left"> - <input class="input is-rounded" type="text" required /> + <input + v-model="formData.city" + class="input is-rounded" + type="text" + required + /> <span class="icon is-left"> <span class="iconify-inline" data-icon="mdi-city"></span> </span> @@ -147,6 +181,7 @@ <div class="control has-icons-left"> <input + v-model="formData.zip" class="input is-rounded" type="text" pattern="[0-9]{5}" @@ -162,51 +197,23 @@ </section> <section class="section"> - <h1 class="title">Payment</h1> + <h1 class="title">Payment & Delivery</h1> <hr /> - <div class="field"> - <div class="control "> - <label class="radio"> - <input type="radio" name="payment" checked /> - Cash or check upon delivery - </label> - <label class="radio"> - <input type="radio" name="payment" /> - Mail-in cash or check - </label> - <label class="radio"> - <input type="radio" name="payment" /> - PayPal, Square - </label> - </div> + <div class="content"> + <p> + You will be contacted directly regarding payment and delivery + options. + </p> </div> </section> <section class="section"> - <h1 class="title">Delivery Options</h1> + <h1 class="title">Finish</h1> <hr /> - <div class="field"> - <div class="control "> - <label class="radio"> - <input type="radio" name="delivery" checked /> - Pick up at studio - </label> - <label class="radio"> - <input type="radio" name="delivery" /> - Pick up at Simply Vintage Art Gallery - </label> - <label class="radio"> - <input type="radio" name="delivery" /> - Delivery - </label> - </div> - </div> - </section> - - <section class="section"> - <button class="button is-success is-rounded"> - Continue to Confirmation + <h1 class="subtitle">Confirm your order of {{ cartTotal }}?</h1> + <button class="button is-success is-rounded is-medium"> + Place Order </button> </section> </form> @@ -216,7 +223,79 @@ <script> export default { name: "CheckoutForm", - computed: {}, - methods: {} + data() { + return { + states: [ + "Virginia", + "Alabama", + "Alaska", + "Arizona", + "Arkansas", + "California", + "Colorado", + "Connecticut", + "Delaware", + "Florida", + "Georgia", + "Hawaii", + "Idaho", + "Illinois", + "Indiana", + "Iowa", + "Kansas", + "Kentucky", + "Louisiana", + "Maine", + "Maryland", + "Massachusetts", + "Michigan", + "Minnesota", + "Mississippi", + "Missouri", + "Montana", + "Nebraska", + "Nevada", + "New Hampshire", + "New Jersey", + "New Mexico", + "New York", + "North Carolina", + "North Dakota", + "Ohio", + "Oklahoma", + "Oregon", + "Pennsylvania", + "Rhode Island", + "South Carolina", + "South Dakota", + "Tennessee", + "Texas", + "Utah", + "Vermont", + "Washington", + "West Virginia", + "Wisconsin", + "Wyoming" + ], + formData: { + firstName: "", + lastName: "", + email: "", + phone: "", + address1: "", + address2: "", + city: "", + state: "Virginia", + country: "USA", + zip: "", + sms: false + } + }; + }, + computed: { + cartTotal() { + return this.$store.getters.cartTotal; + } + } }; </script> diff --git a/iridescence/src/router/index.js b/iridescence/src/router/index.js index cc63967..ce48c8c 100644 --- a/iridescence/src/router/index.js +++ b/iridescence/src/router/index.js @@ -1,10 +1,12 @@ import Vue from "vue"; import VueRouter from "vue-router"; import Home from "../views/Home.vue"; -import About from "../views/About.vue"; +import Care from "../views/Care.vue"; +import Faq from "../views/Faq.vue"; import Admin from "../views/Admin.vue"; import Cart from "../views/Cart.vue"; import Checkout from "../views/Checkout.vue"; +import Privacy from "../views/Privacy.vue"; Vue.use(VueRouter); @@ -15,14 +17,6 @@ const routes = [ component: Home }, { - path: "/about", - name: "About", - // route level code-splitting - // this generates a separate chunk (about.[hash].js) for this route - // which is lazy-loaded when the route is visited. - component: About - }, - { path: "/admin", name: "Administration", component: Admin @@ -36,6 +30,21 @@ const routes = [ path: "/checkout", name: "Checkout", component: Checkout + }, + { + path: "/faq", + name: "F.A.Q.", + component: Faq + }, + { + path: "/care", + name: "Care & Handling", + component: Care + }, + { + path: "/privacy", + name: "Privacy", + component: Privacy } ]; diff --git a/iridescence/src/views/About.vue b/iridescence/src/views/About.vue index 3fa2807..87c483a 100644 --- a/iridescence/src/views/About.vue +++ b/iridescence/src/views/About.vue @@ -1,5 +1,9 @@ <template> - <div class="about"> - <h1>This is an about page</h1> + <div id="about" class="container"> + <section class="section"> + <article class="content"> + <h1>This is an about page</h1> + </article> + </section> </div> </template> diff --git a/iridescence/src/views/Care.vue b/iridescence/src/views/Care.vue new file mode 100644 index 0000000..ba49786 --- /dev/null +++ b/iridescence/src/views/Care.vue @@ -0,0 +1,10 @@ + +<template> + <div id="care" class="container"> + <section class="section"> + <article class="content"> + <h1>This is care and handling page</h1> + </article> + </section> + </div> +</template> diff --git a/iridescence/src/views/Faq.vue b/iridescence/src/views/Faq.vue new file mode 100644 index 0000000..0497393 --- /dev/null +++ b/iridescence/src/views/Faq.vue @@ -0,0 +1,9 @@ +<template> + <div id="Faq" class="container"> + <section class="section"> + <article class="content"> + <h1>This is an F.A.Q. page</h1> + </article> + </section> + </div> +</template> diff --git a/iridescence/src/views/Privacy.vue b/iridescence/src/views/Privacy.vue new file mode 100644 index 0000000..74206da --- /dev/null +++ b/iridescence/src/views/Privacy.vue @@ -0,0 +1,494 @@ +<template> + <div id="privacy" class="container"> + <section class="section"> + <article class="content"> + <h1>Privacy Policy</h1> + <p>Last updated: December 21, 2020</p> + <p> + This Privacy Policy describes Our policies and procedures on the + collection, use and disclosure of Your information when You use the + Service and tells You about Your privacy rights and how the law + protects You. + </p> + <p> + We use Your Personal data to provide and improve the Service. By using + the Service, You agree to the collection and use of information in + accordance with this Privacy Policy. This Privacy Policy has been + created with the help of the + <a + href="https://www.privacypolicies.com/privacy-policy-generator/" + target="_blank" + >Privacy Policy Generator</a + >. + </p> + <h1>Interpretation and Definitions</h1> + <h2>Interpretation</h2> + <p> + The words of which the initial letter is capitalized have meanings + defined under the following conditions. The following definitions + shall have the same meaning regardless of whether they appear in + singular or in plural. + </p> + <h2>Definitions</h2> + <p>For the purposes of this Privacy Policy:</p> + <ul> + <li> + <p> + <strong>Account</strong> means a unique account created for You to + access our Service or parts of our Service. + </p> + </li> + <li> + <p> + <strong>Company</strong> (referred to as either "the + Company", "We", "Us" or "Our" + in this Agreement) refers to The Glassy Ladies LLC, 4201 Munford + Ln, Chesapeake, VA 23321. + </p> + </li> + <li> + <p> + <strong>Cookies</strong> are small files that are placed on Your + computer, mobile device or any other device by a website, + containing the details of Your browsing history on that website + among its many uses. + </p> + </li> + <li> + <p><strong>Country</strong> refers to: Virginia, United States</p> + </li> + <li> + <p> + <strong>Device</strong> means any device that can access the + Service such as a computer, a cellphone or a digital tablet. + </p> + </li> + <li> + <p> + <strong>Personal Data</strong> is any information that relates to + an identified or identifiable individual. + </p> + </li> + <li> + <p><strong>Service</strong> refers to the Website.</p> + </li> + <li> + <p> + <strong>Service Provider</strong> means any natural or legal + person who processes the data on behalf of the Company. It refers + to third-party companies or individuals employed by the Company to + facilitate the Service, to provide the Service on behalf of the + Company, to perform services related to the Service or to assist + the Company in analyzing how the Service is used. + </p> + </li> + <li> + <p> + <strong>Third-party Social Media Service</strong> refers to any + website or any social network website through which a User can log + in or create an account to use the Service. + </p> + </li> + <li> + <p> + <strong>Usage Data</strong> refers to data collected + automatically, either generated by the use of the Service or from + the Service infrastructure itself (for example, the duration of a + page visit). + </p> + </li> + <li> + <p> + <strong>Website</strong> refers to The Glassy Ladies, accessible + from + <a + href="https://theglassyladies.com" + rel="external nofollow noopener" + target="_blank" + >https://theglassyladies.com</a + > + </p> + </li> + <li> + <p> + <strong>You</strong> means the individual accessing or using the + Service, or the company, or other legal entity on behalf of which + such individual is accessing or using the Service, as applicable. + </p> + </li> + </ul> + <h1>Collecting and Using Your Personal Data</h1> + <h2>Types of Data Collected</h2> + <h3>Personal Data</h3> + <p> + While using Our Service, We may ask You to provide Us with certain + personally identifiable information that can be used to contact or + identify You. Personally identifiable information may include, but is + not limited to: + </p> + <ul> + <li> + <p>Email address</p> + </li> + <li> + <p>First name and last name</p> + </li> + <li> + <p>Phone number</p> + </li> + <li> + <p>Address, State, Province, ZIP/Postal code, City</p> + </li> + <li> + <p>Usage Data</p> + </li> + </ul> + <h3>Usage Data</h3> + <p>Usage Data is collected automatically when using the Service.</p> + <p> + Usage Data may include information such as Your Device's Internet + Protocol address (e.g. IP address), browser type, browser version, the + pages of our Service that You visit, the time and date of Your visit, + the time spent on those pages, unique device identifiers and other + diagnostic data. + </p> + <p> + When You access the Service by or through a mobile device, We may + collect certain information automatically, including, but not limited + to, the type of mobile device You use, Your mobile device unique ID, + the IP address of Your mobile device, Your mobile operating system, + the type of mobile Internet browser You use, unique device identifiers + and other diagnostic data. + </p> + <p> + We may also collect information that Your browser sends whenever You + visit our Service or when You access the Service by or through a + mobile device. + </p> + <h3>Tracking Technologies and Cookies</h3> + <p> + We use Cookies and similar tracking technologies to track the activity + on Our Service and store certain information. Tracking technologies + used are beacons, tags, and scripts to collect and track information + and to improve and analyze Our Service. The technologies We use may + include: + </p> + <ul> + <li> + <strong>Cookies or Browser Cookies.</strong> A cookie is a small + file placed on Your Device. You can instruct Your browser to refuse + all Cookies or to indicate when a Cookie is being sent. However, if + You do not accept Cookies, You may not be able to use some parts of + our Service. Unless you have adjusted Your browser setting so that + it will refuse Cookies, our Service may use Cookies. + </li> + <li> + <strong>Flash Cookies.</strong> Certain features of our Service may + use local stored objects (or Flash Cookies) to collect and store + information about Your preferences or Your activity on our Service. + Flash Cookies are not managed by the same browser settings as those + used for Browser Cookies. For more information on how You can delete + Flash Cookies, please read "Where can I change the settings for + disabling, or deleting local shared objects?" available at + <a + href="https://helpx.adobe.com/flash-player/kb/disable-local-shared-objects-flash.html#main_Where_can_I_change_the_settings_for_disabling__or_deleting_local_shared_objects_" + rel="external nofollow noopener" + target="_blank" + >https://helpx.adobe.com/flash-player/kb/disable-local-shared-objects-flash.html#main_Where_can_I_change_the_settings_for_disabling__or_deleting_local_shared_objects_</a + > + </li> + <li> + <strong>Web Beacons.</strong> Certain sections of our Service and + our emails may contain small electronic files known as web beacons + (also referred to as clear gifs, pixel tags, and single-pixel gifs) + that permit the Company, for example, to count users who have + visited those pages or opened an email and for other related website + statistics (for example, recording the popularity of a certain + section and verifying system and server integrity). + </li> + </ul> + <p> + Cookies can be "Persistent" or "Session" Cookies. + Persistent Cookies remain on Your personal computer or mobile device + when You go offline, while Session Cookies are deleted as soon as You + close Your web browser. Learn more about cookies: + <a + href="https://www.privacypolicies.com/blog/cookies/" + target="_blank" + >What Are Cookies?</a + >. + </p> + <p> + We use both Session and Persistent Cookies for the purposes set out + below: + </p> + <ul> + <li> + <p><strong>Necessary / Essential Cookies</strong></p> + <p>Type: Session Cookies</p> + <p>Administered by: Us</p> + <p> + Purpose: These Cookies are essential to provide You with services + available through the Website and to enable You to use some of its + features. They help to authenticate users and prevent fraudulent + use of user accounts. Without these Cookies, the services that You + have asked for cannot be provided, and We only use these Cookies + to provide You with those services. + </p> + </li> + <li> + <p><strong>Cookies Policy / Notice Acceptance Cookies</strong></p> + <p>Type: Persistent Cookies</p> + <p>Administered by: Us</p> + <p> + Purpose: These Cookies identify if users have accepted the use of + cookies on the Website. + </p> + </li> + <li> + <p><strong>Functionality Cookies</strong></p> + <p>Type: Persistent Cookies</p> + <p>Administered by: Us</p> + <p> + Purpose: These Cookies allow us to remember choices You make when + You use the Website, such as remembering your login details or + language preference. The purpose of these Cookies is to provide + You with a more personal experience and to avoid You having to + re-enter your preferences every time You use the Website. + </p> + </li> + </ul> + <p> + For more information about the cookies we use and your choices + regarding cookies, please visit our Cookies Policy or the Cookies + section of our Privacy Policy. + </p> + <h2>Use of Your Personal Data</h2> + <p>The Company may use Personal Data for the following purposes:</p> + <ul> + <li> + <p> + <strong>To provide and maintain our Service</strong>, including to + monitor the usage of our Service. + </p> + </li> + <li> + <p> + <strong>To manage Your Account:</strong> to manage Your + registration as a user of the Service. The Personal Data You + provide can give You access to different functionalities of the + Service that are available to You as a registered user. + </p> + </li> + <li> + <p> + <strong>For the performance of a contract:</strong> the + development, compliance and undertaking of the purchase contract + for the products, items or services You have purchased or of any + other contract with Us through the Service. + </p> + </li> + <li> + <p> + <strong>To contact You:</strong> To contact You by email, + telephone calls, SMS, or other equivalent forms of electronic + communication, such as a mobile application's push notifications + regarding updates or informative communications related to the + functionalities, products or contracted services, including the + security updates, when necessary or reasonable for their + implementation. + </p> + </li> + <li> + <p> + <strong>To provide You</strong> with news, special offers and + general information about other goods, services and events which + we offer that are similar to those that you have already purchased + or enquired about unless You have opted not to receive such + information. + </p> + </li> + <li> + <p> + <strong>To manage Your requests:</strong> To attend and manage + Your requests to Us. + </p> + </li> + <li> + <p> + <strong>For business transfers:</strong> We may use Your + information to evaluate or conduct a merger, divestiture, + restructuring, reorganization, dissolution, or other sale or + transfer of some or all of Our assets, whether as a going concern + or as part of bankruptcy, liquidation, or similar proceeding, in + which Personal Data held by Us about our Service users is among + the assets transferred. + </p> + </li> + <li> + <p> + <strong>For other purposes</strong>: We may use Your information + for other purposes, such as data analysis, identifying usage + trends, determining the effectiveness of our promotional campaigns + and to evaluate and improve our Service, products, services, + marketing and your experience. + </p> + </li> + </ul> + <p> + We may share Your personal information in the following situations: + </p> + <ul> + <li> + <strong>With Service Providers:</strong> We may share Your personal + information with Service Providers to monitor and analyze the use of + our Service, to contact You. + </li> + <li> + <strong>For business transfers:</strong> We may share or transfer + Your personal information in connection with, or during negotiations + of, any merger, sale of Company assets, financing, or acquisition of + all or a portion of Our business to another company. + </li> + <li> + <strong>With Affiliates:</strong> We may share Your information with + Our affiliates, in which case we will require those affiliates to + honor this Privacy Policy. Affiliates include Our parent company and + any other subsidiaries, joint venture partners or other companies + that We control or that are under common control with Us. + </li> + <li> + <strong>With business partners:</strong> We may share Your + information with Our business partners to offer You certain + products, services or promotions. + </li> + <li> + <strong>With other users:</strong> when You share personal + information or otherwise interact in the public areas with other + users, such information may be viewed by all users and may be + publicly distributed outside. If You interact with other users or + register through a Third-Party Social Media Service, Your contacts + on the Third-Party Social Media Service may see Your name, profile, + pictures and description of Your activity. Similarly, other users + will be able to view descriptions of Your activity, communicate with + You and view Your profile. + </li> + <li> + <strong>With Your consent</strong>: We may disclose Your personal + information for any other purpose with Your consent. + </li> + </ul> + <h2>Retention of Your Personal Data</h2> + <p> + The Company will retain Your Personal Data only for as long as is + necessary for the purposes set out in this Privacy Policy. We will + retain and use Your Personal Data to the extent necessary to comply + with our legal obligations (for example, if we are required to retain + your data to comply with applicable laws), resolve disputes, and + enforce our legal agreements and policies. + </p> + <p> + The Company will also retain Usage Data for internal analysis + purposes. Usage Data is generally retained for a shorter period of + time, except when this data is used to strengthen the security or to + improve the functionality of Our Service, or We are legally obligated + to retain this data for longer time periods. + </p> + <h2>Transfer of Your Personal Data</h2> + <p> + Your information, including Personal Data, is processed at the + Company's operating offices and in any other places where the parties + involved in the processing are located. It means that this information + may be transferred to — and maintained on — computers located outside + of Your state, province, country or other governmental jurisdiction + where the data protection laws may differ than those from Your + jurisdiction. + </p> + <p> + Your consent to this Privacy Policy followed by Your submission of + such information represents Your agreement to that transfer. + </p> + <p> + The Company will take all steps reasonably necessary to ensure that + Your data is treated securely and in accordance with this Privacy + Policy and no transfer of Your Personal Data will take place to an + organization or a country unless there are adequate controls in place + including the security of Your data and other personal information. + </p> + <h2>Disclosure of Your Personal Data</h2> + <h3>Business Transactions</h3> + <p> + If the Company is involved in a merger, acquisition or asset sale, + Your Personal Data may be transferred. We will provide notice before + Your Personal Data is transferred and becomes subject to a different + Privacy Policy. + </p> + <h3>Law enforcement</h3> + <p> + Under certain circumstances, the Company may be required to disclose + Your Personal Data if required to do so by law or in response to valid + requests by public authorities (e.g. a court or a government agency). + </p> + <h3>Other legal requirements</h3> + <p> + The Company may disclose Your Personal Data in the good faith belief + that such action is necessary to: + </p> + <ul> + <li>Comply with a legal obligation</li> + <li>Protect and defend the rights or property of the Company</li> + <li> + Prevent or investigate possible wrongdoing in connection with the + Service + </li> + <li> + Protect the personal safety of Users of the Service or the public + </li> + <li>Protect against legal liability</li> + </ul> + <h2>Security of Your Personal Data</h2> + <p> + The security of Your Personal Data is important to Us, but remember + that no method of transmission over the Internet, or method of + electronic storage is 100% secure. While We strive to use commercially + acceptable means to protect Your Personal Data, We cannot guarantee + its absolute security. + </p> + <h1>Links to Other Websites</h1> + <p> + Our Service may contain links to other websites that are not operated + by Us. If You click on a third party link, You will be directed to + that third party's site. We strongly advise You to review the Privacy + Policy of every site You visit. + </p> + <p> + We have no control over and assume no responsibility for the content, + privacy policies or practices of any third party sites or services. + </p> + <h1>Changes to this Privacy Policy</h1> + <p> + We may update Our Privacy Policy from time to time. We will notify You + of any changes by posting the new Privacy Policy on this page. + </p> + <p> + We will let You know via email and/or a prominent notice on Our + Service, prior to the change becoming effective and update the + "Last updated" date at the top of this Privacy Policy. + </p> + <p> + You are advised to review this Privacy Policy periodically for any + changes. Changes to this Privacy Policy are effective when they are + posted on this page. + </p> + <h1>Contact Us</h1> + <p> + If you have any questions about this Privacy Policy, You can contact + us: + </p> + <ul> + <li>By email: privacy@theglassyladies.com</li> + </ul> + </article> + </section> + </div> +</template> |