diff --git a/functions/next.config.js b/functions/next.config.js index dbb81af2..d09b3dea 100644 --- a/functions/next.config.js +++ b/functions/next.config.js @@ -9,5 +9,6 @@ const withNextra = nextra({ module.exports = withNextra({ distDir: 'dist', generateBuildId: async () => 'api-homepage', + pageExtensions: ['page.tsx'], i18n, }); diff --git a/next.config.js b/next.config.js index dbb81af2..d09b3dea 100644 --- a/next.config.js +++ b/next.config.js @@ -9,5 +9,6 @@ const withNextra = nextra({ module.exports = withNextra({ distDir: 'dist', generateBuildId: async () => 'api-homepage', + pageExtensions: ['page.tsx'], i18n, }); diff --git a/package.json b/package.json index 87f39855..02bfc25d 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,8 @@ "main": "server.js", "scripts": { "build": "rm -rf dist/ && npm run build:site && npm run build:src", - "build:functions": "rm -rf functions/src && shx cp -r ./dist ./functions && shx cp -r ./dist/src/dictionaries/ig-en ./functions/dictionaries", "build:src": "tsc && cross-env NODE_ENV=build npm run build:dictionaries && npm run build:functions", + "build:functions": "rm -rf functions/src && shx cp -r ./dist ./functions && shx cp -r ./dist/src/dictionaries/ig-en ./functions/dictionaries", "build:dictionaries:ig:en": "[ ! -d \"./dist/src/dictionaries\" ] && shx mkdir ./dist/src/dictionaries || echo '' && [ ! -d \"./dist/src/dictionaries/ig-en\" ] && shx mkdir ./dist/src/dictionaries/ig-en || echo 'Igbo to English dictionaries dir already exists'", "build:dictionaries:en:ig": "[ ! -d \"./dist/src/dictionaries\" ] && shx mkdir ./dist/src/dictionaries || echo '' && [ ! -d \"./dist/src/dictionaries/en-ig\" ] && shx mkdir ./dist/src/dictionaries/en-ig || echo 'English to Igbo dictionaries dir already exists'", "build:dictionaries:nsibidi": "[ ! -d \"./dist/src/dictionaries\" ] && shx mkdir ./dist/src/dictionaries || echo '' && [ ! -d \"./dist/src/dictionaries/nsibidi\" ] && shx mkdir ./dist/src/dictionaries/nsibidi || echo 'Nsibidi dictionary dir already exists'", diff --git a/src/middleware/validateUpdateDeveloperBody.ts b/src/middleware/validateUpdateDeveloperBody.ts index 3e38bc78..841cb5ef 100644 --- a/src/middleware/validateUpdateDeveloperBody.ts +++ b/src/middleware/validateUpdateDeveloperBody.ts @@ -4,6 +4,7 @@ import { MiddleWare } from '../types'; const developersJoiSchema = Joi.object().keys({ firebaseId: Joi.string().required(), email: Joi.string().allow('', null).optional(), + displayName: Joi.string().allow('', null).optional(), }); const validateUpdateDeveloperBody: MiddleWare = (req, res, next) => { diff --git a/src/pages/404.tsx b/src/pages/404/index.page.tsx similarity index 100% rename from src/pages/404.tsx rename to src/pages/404/index.page.tsx diff --git a/src/pages/_app.tsx b/src/pages/_app.page.tsx similarity index 100% rename from src/pages/_app.tsx rename to src/pages/_app.page.tsx diff --git a/src/pages/_document.tsx b/src/pages/_document.page.tsx similarity index 100% rename from src/pages/_document.tsx rename to src/pages/_document.page.tsx diff --git a/src/pages/about.tsx b/src/pages/about/index.page.tsx similarity index 94% rename from src/pages/about.tsx rename to src/pages/about/index.page.tsx index ee4b52a1..d02fb0cf 100644 --- a/src/pages/about.tsx +++ b/src/pages/about/index.page.tsx @@ -1,9 +1,9 @@ import React from 'react'; import { Box, Heading, Text, Link, chakra } from '@chakra-ui/react'; import { FiMail } from 'react-icons/fi'; -import Navbar from './components/Navbar'; -import Footer from './components/Footer'; -import { DICTIONARY_APP_URL } from '../siteConstants'; +import Navbar from '../components/Navbar'; +import Footer from '../components/Footer'; +import { DICTIONARY_APP_URL } from '../../siteConstants'; const About = () => ( diff --git a/src/pages/dashboard/components/DashboardMenu.tsx b/src/pages/dashboard/components/DashboardMenu.tsx index 1288afbd..f1671a66 100644 --- a/src/pages/dashboard/components/DashboardMenu.tsx +++ b/src/pages/dashboard/components/DashboardMenu.tsx @@ -10,7 +10,7 @@ const DashboardMenu = () => { const router = useRouter(); const logOut = async () => { try { - await signOut(auth); + signOut(auth); router.push('/'); } catch (err) { console.error('Unable to sign out', err); diff --git a/src/pages/dashboard/index.ts b/src/pages/dashboard/index.page.tsx similarity index 100% rename from src/pages/dashboard/index.ts rename to src/pages/dashboard/index.page.tsx diff --git a/src/pages/index.tsx b/src/pages/index.page.tsx similarity index 100% rename from src/pages/index.tsx rename to src/pages/index.page.tsx diff --git a/src/pages/privacy.tsx b/src/pages/privacy/index.page.tsx similarity index 73% rename from src/pages/privacy.tsx rename to src/pages/privacy/index.page.tsx index 59835f15..cdaa9b30 100644 --- a/src/pages/privacy.tsx +++ b/src/pages/privacy/index.page.tsx @@ -1,14 +1,8 @@ import React from 'react'; -import { - Box, - Heading, - Text, - UnorderedList, - ListItem, -} from '@chakra-ui/react'; -import Navbar from './components/Navbar'; -import Footer from './components/Footer'; -import { API_FROM_EMAIL } from '../siteConstants'; +import { Box, Heading, Text, UnorderedList, ListItem } from '@chakra-ui/react'; +import Navbar from '../components/Navbar'; +import Footer from '../components/Footer'; +import { API_FROM_EMAIL } from '../../siteConstants'; const Privacy = () => ( <> @@ -17,23 +11,29 @@ const Privacy = () => ( {/* Privacy Policy Start */} - Privacy Policy + + Privacy Policy + Last updated: June 2, 2022 - 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. + 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. - Interpretation and Definitions - Interpretation + + Interpretation and Definitions + + + Interpretation + - 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. + 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. - Definitions + + Definitions + For the purposes of this Privacy Policy: @@ -138,14 +138,17 @@ const Privacy = () => ( - Collecting and Using Your Personal Data - Types of Data Collected + + Collecting and Using Your Personal Data + + + Types of Data Collected + Personal Data - 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: + 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: @@ -171,22 +174,20 @@ const Privacy = () => ( and other diagnostic data.`} - 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. + 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. - 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. + 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. Information from Third-Party Social Media Services - The Company allows You to create an account and log in to use the - Service through the following Third-party Social Media Services: + The Company allows You to create an account and log in to use the Service through the + following Third-party Social Media Services: Google @@ -209,10 +210,9 @@ const Privacy = () => ( Tracking Technologies and Cookies - 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 + 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: @@ -242,10 +242,7 @@ const Privacy = () => ( . - - We use both Session and Persistent Cookies for the purposes set - out below: - + We use both Session and Persistent Cookies for the purposes set out below: @@ -254,13 +251,11 @@ const Privacy = () => ( Type: Session Cookies Administered by: Us - 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. + 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. @@ -270,27 +265,26 @@ const Privacy = () => ( Type: Persistent Cookies Administered by: Us - 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. + 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. - 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. + 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. - Use of Your Personal Data + + Use of Your Personal Data + The Company may use Personal Data for the following purposes: - To provide and maintain our Service - , including to monitor the usage of our Service. + To provide and maintain our Service, including to monitor the usage + of our Service. @@ -364,10 +358,7 @@ const Privacy = () => ( - - We may share Your personal information in the following - situations: - + We may share Your personal information in the following situations: With Service Providers: @@ -416,23 +407,25 @@ const Privacy = () => ( personal information for any other purpose with Your consent.`} - Retention of Your Personal Data + + Retention of Your Personal Data + - 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. + 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. - 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. + 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. - Transfer of Your Personal Data + + Transfer of Your Personal Data + {`Your information, including Personal Data, is processed at the Company's operating offices and in any other places where the @@ -443,68 +436,63 @@ const Privacy = () => ( differ than those from Your jurisdiction.`} - Your consent to this Privacy Policy followed by Your submission of - such information represents Your agreement to that transfer. + Your consent to this Privacy Policy followed by Your submission of such information + represents Your agreement to that transfer. - 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. + 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. - Disclosure of Your Personal Data + + Disclosure of Your Personal Data + Business Transactions - 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. + 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. Law enforcement - 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). + 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). Other legal requirements - The Company may disclose Your Personal Data in the good faith - belief that such action is necessary to: + The Company may disclose Your Personal Data in the good faith belief that such action is + necessary to: Comply with a legal obligation Protect and defend the rights or property of the Company - Prevent or investigate possible wrongdoing in connection with - the Service - - - Protect the personal safety of Users of the Service or the - public + Prevent or investigate possible wrongdoing in connection with the Service + Protect the personal safety of Users of the Service or the public Protect against legal liability - Security of Your Personal Data + + Security of Your Personal Data + - 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. + 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. - {'Children\'s Privacy'} + + Children's Privacy + - Our Service does not address anyone under the age of 13. We do not - knowingly collect personally identifiable information from anyone - under the age of 13. If You are a parent or guardian and You are - aware that Your child has provided Us with Personal Data, please - contact Us. If We become aware that We have collected Personal - Data from anyone under the age of 13 without verification of - parental consent, We take steps to remove that information from - Our servers. + Our Service does not address anyone under the age of 13. We do not knowingly collect + personally identifiable information from anyone under the age of 13. If You are a parent + or guardian and You are aware that Your child has provided Us with Personal Data, please + contact Us. If We become aware that We have collected Personal Data from anyone under + the age of 13 without verification of parental consent, We take steps to remove that + information from Our servers. {`If We need to rely on consent as a legal basis for processing Your @@ -512,7 +500,9 @@ const Privacy = () => ( may require Your parent's consent before We collect and use that information.`} - Links to Other Websites + + Links to Other Websites + {`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 @@ -520,14 +510,15 @@ const Privacy = () => ( review the Privacy Policy of every site You visit.`} - We have no control over and assume no responsibility for the - content, privacy policies or practices of any third party sites or - services. + We have no control over and assume no responsibility for the content, privacy policies + or practices of any third party sites or services. - Changes to this Privacy Policy + + Changes to this Privacy Policy + - 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. + 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. {`We will let You know via email and/or a prominent notice on Our @@ -535,19 +526,19 @@ const Privacy = () => ( "Last updated" date at the top of this Privacy Policy.`} - 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. - - Contact Us - - If you have any questions about this Privacy Policy, You can - contact us: + 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. + + Contact Us + + If you have any questions about this Privacy Policy, You can contact us: {'By email: '} - {API_FROM_EMAIL} + + {API_FROM_EMAIL} + diff --git a/src/pages/signup.tsx b/src/pages/signup/index.page.tsx similarity index 97% rename from src/pages/signup.tsx rename to src/pages/signup/index.page.tsx index 23988b15..e9ab529c 100644 --- a/src/pages/signup.tsx +++ b/src/pages/signup/index.page.tsx @@ -5,10 +5,10 @@ import { createUserWithEmailAndPassword } from 'firebase/auth'; import { useRouter } from 'next/router'; import { useForm, Controller, FieldValues } from 'react-hook-form'; import Login from './login'; -import Navbar from './components/Navbar'; -import Input from './components/Input'; -import { auth } from '../services/firebase'; -import { postDeveloper } from './APIs/DevelopersAPI'; +import Navbar from '../components/Navbar'; +import Input from '../components/Input'; +import { auth } from '../../services/firebase'; +import { postDeveloper } from '../APIs/DevelopersAPI'; enum AuthState { SIGNING_IN, diff --git a/src/pages/login.tsx b/src/pages/signup/login.tsx similarity index 89% rename from src/pages/login.tsx rename to src/pages/signup/login.tsx index 3d0bfb13..1dd5eb6e 100644 --- a/src/pages/login.tsx +++ b/src/pages/signup/login.tsx @@ -3,9 +3,9 @@ import { useRouter } from 'next/router'; import { signInWithPopup, GoogleAuthProvider } from 'firebase/auth'; import Image from 'next/image'; import { Box, Button } from '@chakra-ui/react'; -import { auth } from '../services/firebase'; -import getAWSAsset from './utils/getAWSAsset'; -import { putDeveloper } from './APIs/DevelopersAPI'; +import { auth } from '../../services/firebase'; +import getAWSAsset from '../utils/getAWSAsset'; +import { putDeveloper } from '../APIs/DevelopersAPI'; const provider = new GoogleAuthProvider(); diff --git a/src/pages/terms.tsx b/src/pages/terms.tsx deleted file mode 100644 index 9717bd0f..00000000 --- a/src/pages/terms.tsx +++ /dev/null @@ -1,567 +0,0 @@ -/* eslint-disable */ -import React from 'react'; -import { - Box, - Heading, - Text, - UnorderedList, - ListItem, -} from '@chakra-ui/react'; -import { APP_URL } from '../siteConstants'; -import Navbar from './components/Navbar'; -import Footer from './components/Footer'; - -const Terms = () => ( - <> - - - - {/* Terms and Conditions Start */} - - - Terms and Conditions - - - 1. About the Website - - - - Welcome to the Igbo API{' '} - (the ' Igbo') dictionary API. The Website that offers an Igbo-English - dictionary API as (the ' Services - '). - - - The Website is operated by Nkọwa okwu LLC. Access to and use of the - Website, or any of its associated Products or Services, is provided by - Nkọwa okwu LLC. Please read these terms and conditions (the '{' '} - Terms') carefully. By using, browsing, and/or reading - the Website, this signifies that you have read, understood, and agree to - be bound by the Terms. If you do not agree with the Terms, you must cease - the use of the Website, or any of Services, immediately. - - - (c)Nkọwa okwu LLC. reserves the right to review and change any of the - Terms by updating this page at its sole discretion. When Nkọwa okwu LLC. - updates the Terms, it will use reasonable endeavors to provide you with - notice of updates to the Terms. Any changes to the Terms take immediate - effect from the date of their publication. Before you continue, we - recommend you keep a copy of the Terms for your records. - - - - 2. Acceptance of the Terms - - - You accept the Terms by remaining on the Website. You may also accept the - Terms by clicking to accept or agree to the Terms where this option is - made available to you by Nkọwa okwu LLC. in the user interface. Nkọwa okwu - LLC reserves the right to change the Terms at any time. - - - 3. Subscription and Registration to use Nkọwa okwu - Services - - - - All users by default have access to all Nkọwa okwu Learning free tiers - and no credit card information is required ('No{' '} - Subscription Fee') for this tier. - - - In order to access the advanced features of Nkọwa okwu Learning, you - must first purchase a subscription through the Website (the '{' '} - Subscription') and pay the applicable fee for the - selected Subscription (the ' Subscription Fee'). - - - In purchasing the Subscription, you acknowledge and agree that it is - your responsibility to ensure that the Subscription you elect to purchase - is suitable for your use. - - - Once you have purchased the Subscription, you will then be required to - register for an account through the Website before you can access the - Services (the ' Account'). - - - As part of the registration process, or as part of your continued use - of the Services, you may be required to provide personal information about - yourself (such as identification or contact details), including: - - - Email address - Full name - Mailing address - Password - - - You warrant that any information you give to Nkọwa okwu LLC. in the - course of completing the registration process will always be accurate, - correct and up to date. - - - (f)Once you have completed the registration process, you will be a - registered member of the Website (' Member') and - agree to be bound by the Terms. As a Member, you will be granted immediate - access to the Services from the time you have completed the registration - process until the subscription period expires (the '{' '} - Subscription Period'). And you will automatically - subscribe to all newsletters and promotions and you will have the ability - to unsubscribe at any time. - - You may not use the Services and may not accept the Terms if: - - - you are not of legal age to form a binding contract with Nkọwa okwu - LLC.; or - - - you are a person barred from receiving the Services under the laws of - or other countries including the country in which you are resident or from - which you use the Services. - - - - - 4. Your obligations as a Member - - As a Member, you agree to comply with the following: - - (a)you will use the Services only for purposes that are permitted by: - - the Terms; and - - any applicable law, regulation, or generally accepted practices or - guidelines in the relevant jurisdictions; - - - - you have the sole responsibility for protecting the confidentiality of - your password and/or email address. Use of your password by any other - person may result in the immediate cancellation of the Services; - - - any use of your registration information by any other person, or third - parties, is strictly prohibited. You agree to immediately notify Nkowa - Okwu LLC. of any unauthorised use of your password or email address or any - breach of security of which you have become aware; - - - access and use of the Website is limited, non-transferable and allows - for the sole use of the Website by you for the purposes of Nkọwa okwu LLC. - providing the Services; - - - you will not use the Services or the Website in connection with any - commercial endeavors except those that are specifically endorsed or - approved by the management of Nkọwa okwu LLC.; - - - you will not use the Services or Website for any illegal and/or - unauthorised use which includes collecting email addresses of Members by - electronic or other means for the purpose of sending unsolicited email or - unauthorised framing of or linking to the Website; - - - you agree that commercial advertisements, affiliate links, and other - forms of solicitation may be removed from the Website without notice and - may result in termination of the Services. Appropriate legal action will - be taken by Nkọwa okwu LLC. for any illegal or unauthorised use of the - Website; and - - - you acknowledge and agree that any automated use of the Website or its - Services is prohibited. - - - - 5. Payment - - - - Where the option is given to you, you may make payment of the - Subscription Fee by way of: - - - - Credit Card Payment (' Credit Card') - - - - You acknowledge and agree that where a request for the payment of the - Subscription Fee is returned or denied, for whatever reason, by your - financial institution or is unpaid by you for any other reason, then you - are liable for any costs, including banking fees and charges, associated - with the Subscription Fee. - - - You agree and acknowledge that Nkọwa okwu LLC. can vary the - Subscription Fee at any time and that the varied Subscription Fee will - come into effect following the conclusion of the existing Subscription - Period. - - - - 6. Refund Policy - - Payments are non-refundable and there are no refunds or credits for - partially used periods. - - 7. Copyright - - - - The Website, the Services, and all of the related products of Nkowa - Okwu LLC. are subject to copyright. The material on the Website is - protected by copyright under the laws and through international treaties. - Unless otherwise indicated, all rights (including copyright) in the - Services and compilation of the Website (including but not limited to - text, graphics, logos, button icons, video images, audio clips, Website, - code, scripts, design elements, and interactive features) or the Services - are owned or controlled for these purposes and are reserved by Nkọwa okwu - LLC. or its contributors. - - - All trademarks, service marks, and trade names are owned, registered, - and/or licensed by Nkọwa okwu LLC., who grants to you a worldwide, - non-exclusive, royalty-free, revocable license whilst you are a Member to: - - - use the Website pursuant to the Terms; - - copy and store the Website and the material contained in the Website - in your device's cache memory; and - - - print pages from the Website for your own personal and non-commercial - use. - - - - Nkọwa okwu LLC. does not grant you any other rights whatsoever in relation - to the Website or the Services. All other rights are expressly reserved by - Nkọwa okwu LLC.. - - - Nkọwa okwu LLC. retains all rights, title, and interest in and to the - Website and all related Services. Nothing you do on or in relation to the - Website will transfer any: - - - - business name, trading name, domain name, trademark, industrial design, - patent, registered design or copyright, or - - - a right to use or exploit a business name, trading name, domain name, - trademark or industrial design, or - - - a thing, system, or process that is the subject of a patent, - registered design, or copyright (or an adaptation or modification of such - a thing, system, or process), to you. - - - - You may not, without the prior written permission of Nkọwa okwu LLC. - and the permission of any other relevant rights owners: broadcast, - republish, up-load to a third party, transmit, post, distribute, show or - play in public, adapt or change in any way the Services or third-party - services for any purpose, unless otherwise provided by these Terms. This - prohibition does not extend to materials on the Website, which are freely - available for re-use or are in the public domain. - - - - 8. Privacy - - - Nkọwa okwu LLC. takes your privacy seriously and any information provided - through your use of the Website and/or Services are subject to Nkọwa okwu - LLC.'s Privacy Policy, which is available on the Website. - - - 9. General Disclaimer - - - - Nothing in the Terms limits or excludes any guarantees, warranties, - representations, or conditions implied or imposed by law, including the US - Consumer Law (or any liability under them) which by law may not be limited - or excluded. - - Subject to this clause, and to the extent permitted by law: - - - all terms, guarantees, warranties, representations or conditions which - are not expressly stated in the Terms are excluded; and - - - Nkọwa okwu LLC. will not be liable for any special, indirect or - consequential loss or damage (unless such loss or damage is reasonably - foreseeable resulting from our failure to meet an applicable Consumer - Guarantee), loss of profit or opportunity, or damage to goodwill arising - out of or in connection with the Services or these Terms (including as a - result of not being able to use the Services or the late supply of the - Services), whether at common law, under contract, tort (including - negligence), in equity, pursuant to statute or otherwise. - - - - Use of the Website and the Services is at your own risk. Everything on - the Website and the Services is provided to you "as is" and - "as available" without warranty or condition of any kind. None - of the affiliates, directors, officers, employees, agents, contributors - and licensors of Nkọwa okwu LLC. make any express or implied - representation or warranty about the Services or any products or Services - (including the products or Services of Nkọwa okwu LLC.) referred to on the - Website. includes (but is not restricted to) loss or damage you might - suffer as a result of any of the following: - - - - failure of performance, error, omission, interruption, deletion, - defect, failure to correct defects, delay in operation or transmission, - computer virus or other harmful components, loss of data, communication - line failure, unlawful - - - third party conduct, or theft, destruction, alteration, or unauthorised - access to records; - - - the accuracy, suitability, or currency of any information on the - Website, the Services, or any of its Services related products (including - third party material and advertisements on the Website); - - - costs incurred as a result of you using the Website, the Services or - any of the products of Nkọwa okwu LLC.; and - - - the Services or operation in respect to links that are provided for - your convenience. - - - - - 10. Education Services - - - - By using our services, you agree that Nkọwa okwu LLC. is not to be held - liable for any decisions you make based on any of our services or - guidance, and any consequences, as a result, are your own. Under no - circumstances can you hold Nkọwa okwu LLC. liable for any actions you take - nor can you hold us or any of our employees liable for any loss or costs - incurred by you as a result of any guidance, advice, coaching, materials, - or techniques used or provided by Nkọwa okwu LLC. - - - All our information on both the website and in consultations is - intended to assist you and does not in any way, nor is it intended to - substitute professional, financial, or legal advice. Results are not - guaranteed and Nkọwa okwu LLC. takes no responsibility for your actions, - choices, or decisions. - - - - 11. Limitation of liability - - - - Nkọwa okwu LLC.'s total liability arising out of or in connection - with the Services or these Terms, however arising, including under - contract, tort (including negligence), in equity, under statute or - otherwise, will not exceed the resupply of the Services to you. - - - You expressly understand and agree that Nkọwa okwu LLC., its - affiliates, employees, agents, contributors and licensors shall not be - liable to you for any direct, indirect, incidental, special consequential - or exemplary damages which may be incurred by you, however, caused and - under any theory of liability. This shall include, but is not limited to, - any loss of profit (whether incurred directly or indirectly), any loss of - goodwill or business reputation and any other intangible loss. - - - - 12. Termination of Contract - - - - The Terms will continue to apply until terminated by either you or by - Nkọwa okwu LLC. as set out below. - - (b)If you want to terminate the Terms, you may do so by: - - - not renewing the Subscription prior to the end of the Subscription - Period. - - And - - closing your accounts for all of the services which you use, where - Nkọwa okwu LLC. has made this option available to you. - - - (c)Nkọwa okwu LLC. may at any time, terminate the Terms with you if: - - - you do not renew the Subscription at the end of the Subscription - Period; - - - you have breached any provision of the Terms or intend to breach any - provision; - - Nkọwa okwu LLC. is required to do so by law; - - the provision of the Services to you by Nkọwa okwu LLC. is, in the - opinion of Nkọwa okwu LLC., no longer commercially viable. - - - - Subject to local applicable laws, Nkọwa okwu LLC. reserves the right to - discontinue or cancel your membership at any time and may suspend or deny, - in its sole discretion, your access to all or any portion of the Website - or the Services without notice if you breach any provision of the Terms or - any applicable law or if your conduct impacts Nkọwa okwu LLC.'s name - or reputation or violates the rights of those of another party. - - - - 13. Indemnity - - - You agree to indemnify Nkọwa okwu LLC., its affiliates, employees, agents, - contributors, third party content providers, and licensors from and - against: - - - - all actions, suits, claims, demands, liabilities, costs, expenses, - loss, and damage (including legal fees on a full indemnity basis) - incurred, suffered, or arising out of or in connection with Your Content; - - - any direct or indirect consequences of you accessing, using, or - transacting on the Website or attempts to do so; and/or - - any breach of the Terms. - - - 14. Dispute Resolution - - - - 14.1. Compulsory: - - - If a dispute arises out of or relates to the Terms, either party may not - commence - - - any Tribunal or Court proceedings in relation to the dispute, unless the - following clauses have been complied with (except where urgent - interlocutory relief is sought). - - - 14.2. Notice: - - - A party to the Terms claiming a dispute (' Dispute - ') has arisen under the Terms, must give written notice to the other - party detailing the nature of the dispute, the desired outcome, and the - action required to settle the Dispute. - - - 14.3. Resolution: - - - On receipt of that notice (' Notice') by that - other party, the parties to the Terms (' Parties - ') must: - - - - Within 28 days of the Notice endeavor in good faith to resolve the - Dispute expeditiously by negotiation or such other means upon which they - may mutually agree; - - - If for any reason whatsoever, 30 days after the date of the Notice, the - Dispute has not been resolved, the Parties must either agree upon - selection of a mediator or request that an appropriate mediator be - appointed by the President of the primary dispute resolution process or - his or her nominee; - - - The Parties are equally liable for the fees and reasonable expenses of - a mediator and the cost of the venue of the mediation and without limiting - the foregoing undertake to pay any amounts requested by the mediator as a - pre-condition to the mediation commencing. The Parties must each pay their - own costs associated with the mediation; - - The mediation will be held in. - - - 14.4 Confidential: - - - All communications concerning negotiations made by the Parties arising out - of and in connection with this dispute resolution clause are confidential - and to the extent possible, must be treated as "without - prejudice" negotiations for the purpose of applicable laws of - evidence. - - - 14.5. Termination of Mediation: - - - If 3 months have elapsed after the start of a mediation of the Dispute and - the Dispute has not been resolved, either Party may ask the mediator to - terminate the mediation and the mediator must do so. - - - - 15. Venue and Jurisdiction - - - The Services offered by Nkọwa okwu LLC. are intended to be viewed - globally. In the event of any dispute arising out of or in relation to the - Website, you agree that the exclusive venue for resolving any dispute - shall be in the jurisdiction courts. - - - 16. Governing Law - - - The Terms are governed by the laws of. Any dispute, controversy, - proceeding or claim of whatever nature arising out of or in any way - relating to the Terms and the rights created hereby shall be governed, - interpreted, and construed by, under and pursuant to the laws of , without - reference to conflict of law principles, notwithstanding mandatory rules. - The validity of this governing law clause is not contested. The Terms - shall be binding to the benefit of the parties hereto and their successors - and assigns. - - - 17. Independent Legal Advice - - - Both parties confirm and declare that the provisions of the Terms are fair - and reasonable and both parties have taken the opportunity to obtain - independent legal advice and declare the Terms are not against public - policy on the grounds of inequality or bargaining power or general grounds - of restraint of trade. - - - - -