Skip to content

Commit

Permalink
usage terms and privacy policy
Browse files Browse the repository at this point in the history
  • Loading branch information
poliha committed Apr 26, 2020
1 parent 1aa2462 commit 1c07c0a
Show file tree
Hide file tree
Showing 14 changed files with 281 additions and 3 deletions.
9 changes: 9 additions & 0 deletions src/app/app-routing.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,15 @@ const routes: Routes = [
path: 'home',
loadChildren: './pages/home/home.module#HomePageModule',
},
{
path: 'usage-terms',
loadChildren: './pages/usage-terms/usage-terms.module#UsageTermsPageModule',
},
{
path: 'privacy-policy',
loadChildren:
'./pages/privacy-policy/privacy-policy.module#PrivacyPolicyPageModule',
},
{
path: 'saza-setup',
loadChildren: './pages/saza-setup/saza-setup.module#SazaSetupPageModule',
Expand Down
2 changes: 2 additions & 0 deletions src/app/pages/home/home.page.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
Login
</ion-button>
</ng-template>
<p class="small-font">By using Saza wallet, you agree to its <a [routerLink]="'/usage-terms'">usage
terms</a> and <a [routerLink]="'/privacy-policy'">privacy policy</a>.</p>
</div>
</ion-col>
</ion-row>
Expand Down
26 changes: 26 additions & 0 deletions src/app/pages/privacy-policy/privacy-policy.module.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { Routes, RouterModule } from '@angular/router';

import { IonicModule } from '@ionic/angular';

import { PrivacyPolicyPage } from './privacy-policy.page';

const routes: Routes = [
{
path: '',
component: PrivacyPolicyPage,
},
];

@NgModule({
imports: [
CommonModule,
FormsModule,
IonicModule,
RouterModule.forChild(routes),
],
declarations: [PrivacyPolicyPage],
})
export class PrivacyPolicyPageModule {}
46 changes: 46 additions & 0 deletions src/app/pages/privacy-policy/privacy-policy.page.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
<ion-header>
<ion-toolbar>
<ion-buttons slot="start">
<ion-back-button></ion-back-button>
</ion-buttons>
<ion-title>Privacy Policy</ion-title>
</ion-toolbar>
</ion-header>

<ion-content class="ion-padding">
<ion-grid>
<ion-row>
<ion-col size-md="6" offset-md="3" size-lg="4" offset-lg="4" class="ion-text-justify">
<p class="heading-border ion-padding">
This policy may be updated or revised without notice.
It is the responsibility of the user to stay informed about privacy policy changes.
</p>
<p class="heading-border ion-padding">
Saza does not track user actions on mobile, web or desktop applications.
Saza does not contain any analytics scripts.
</p>
<p class="heading-border ion-padding">
Saza never transfers your private keys from your device.
Saza and its developers never have access to your private keys.
</p>
<p class="heading-border ion-padding">
Any transactions carried out via Saza on the Stellar network will be publicly available.

The documentation of Saza wallet is hosted by Gitbook. This service has it's own privacy policy
and it is not covered by this privacy policy.
</p>
<p class="heading-border ion-padding">
Saza can not guarantee the privacy of your actions when
</p>
<ul>
<li>Your mobile device might be compromised.</li>
<li>Your computer might be compromised.</li>
<li>Saza wallet might be compromised.</li>
</ul>



</ion-col>
</ion-row>
</ion-grid>
</ion-content>
Empty file.
24 changes: 24 additions & 0 deletions src/app/pages/privacy-policy/privacy-policy.page.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { IonicModule } from '@ionic/angular';

import { PrivacyPolicyPage } from './privacy-policy.page';

describe('PrivacyPolicyPage', () => {
let component: PrivacyPolicyPage;
let fixture: ComponentFixture<PrivacyPolicyPage>;

beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [PrivacyPolicyPage],
imports: [IonicModule.forRoot()],
}).compileComponents();

fixture = TestBed.createComponent(PrivacyPolicyPage);
component = fixture.componentInstance;
fixture.detectChanges();
}));

it('should create', () => {
expect(component).toBeTruthy();
});
});
32 changes: 32 additions & 0 deletions src/app/pages/privacy-policy/privacy-policy.page.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import { Component } from '@angular/core';
import { UserService } from 'src/app/providers/providers';
import { MenuController } from '@ionic/angular';
import { SazaError } from 'src/app/providers/errors';

@Component({
selector: 'app-privacy-policy',
templateUrl: './privacy-policy.page.html',
styleUrls: ['./privacy-policy.page.scss'],
})
export class PrivacyPolicyPage {
constructor(private userService: UserService, private menu: MenuController) {}

ionViewWillEnter() {
this.userService
.isAuthValid()
.then((isValid) => {
if (!isValid) {
this.menu.enable(false);
}
})
.catch((e) => {
throw new SazaError('Unable to load user details.');
});
}

ionViewWillLeave() {
if (!this.menu.isEnabled()) {
this.menu.enable(true);
}
}
}
5 changes: 2 additions & 3 deletions src/app/pages/settings/settings.page.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,10 @@

<ion-content>
<ion-list>
<ion-item *ngFor="let s of settings" [routerDirection]="'root'"
[routerLink]="[s.url]" detail>
<ion-item *ngFor="let s of settings" [routerLink]="[s.url]" detail>
<ion-label>
{{ s.title }}
</ion-label>
</ion-item>
</ion-list>
</ion-content>
</ion-content>
8 changes: 8 additions & 0 deletions src/app/pages/settings/settings.page.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,14 @@ export class SettingsPage implements OnInit {
title: 'Import Accounts',
url: '/import-account',
},
{
title: 'Privacy Policy',
url: '/privacy-policy',
},
{
title: 'Usage Terms',
url: '/usage-terms',
},
];
pageTitle = 'Settings';
helpUrl = 'https://docs.saza.io/wallet-actions/settings';
Expand Down
26 changes: 26 additions & 0 deletions src/app/pages/usage-terms/usage-terms.module.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { Routes, RouterModule } from '@angular/router';

import { IonicModule } from '@ionic/angular';

import { UsageTermsPage } from './usage-terms.page';

const routes: Routes = [
{
path: '',
component: UsageTermsPage,
},
];

@NgModule({
imports: [
CommonModule,
FormsModule,
IonicModule,
RouterModule.forChild(routes),
],
declarations: [UsageTermsPage],
})
export class UsageTermsPageModule {}
50 changes: 50 additions & 0 deletions src/app/pages/usage-terms/usage-terms.page.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
<ion-header>
<ion-toolbar>
<ion-buttons slot="start">
<ion-back-button></ion-back-button>
</ion-buttons>
<ion-title>Usage Terms</ion-title>
</ion-toolbar>
</ion-header>

<ion-content class="ion-padding">
<ion-grid>
<ion-row>
<ion-col size-md="6" offset-md="3" size-lg="4" offset-lg="4">
<ol class="ion-text-justify">
<li>
<h4>User Responsibilty</h4>
<p>You, the user, are responsible for ALL actions carried out on the Saza wallet on any device that you own
or is in your possession. These actions include but not limited to the following</p>
<ul>
<li>All transactions.</li>
<li>All purchases of tokens.</li>
<li>Import/export of Stellar accounts.</li>
</ul>
<p>Furthermore, you, the user is solely responsible for ensuring your own compliance with laws and taxes
in your jurisdiction. Cryptocurrencies may be illegal in your area. You, are solely responsible for your
own security including keeping your account secret keys safe and backed up.</p>
</li>
<li>
<h4>Privacy</h4>
<p>Kindly review our <a [routerLink]="'/privacy-policy'">privacy policy</a> for more information.</p>
</li>
<li>
<h4>Affiliation and Endorsement</h4>
<p>Saza wallet and its developers are NOT affiliated to the Stellar network. Saza is just a user interface
that allows you to access the Stellar network.
Saza wallet and its developers do NOT endorse any token, asset, coin, programs and initial coin offerings
on the Stellar network. Stellar is a public network and it is your obligation to perform due diligence
before conducting any transactions on the network.</p>
</li>
<li>
<h4>Disclaimer of warranty</h4>
<p>Saza wallet is open source software licensed under the Apache-2.0 license. It is provided free of charge
and on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
</p>
</li>
</ol>
</ion-col>
</ion-row>
</ion-grid>
</ion-content>
Empty file.
24 changes: 24 additions & 0 deletions src/app/pages/usage-terms/usage-terms.page.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { IonicModule } from '@ionic/angular';

import { UsageTermsPage } from './usage-terms.page';

describe('UsageTermsPage', () => {
let component: UsageTermsPage;
let fixture: ComponentFixture<UsageTermsPage>;

beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ UsageTermsPage ],
imports: [IonicModule.forRoot()]
}).compileComponents();

fixture = TestBed.createComponent(UsageTermsPage);
component = fixture.componentInstance;
fixture.detectChanges();
}));

it('should create', () => {
expect(component).toBeTruthy();
});
});
32 changes: 32 additions & 0 deletions src/app/pages/usage-terms/usage-terms.page.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import { Component } from '@angular/core';
import { UserService } from 'src/app/providers/providers';
import { MenuController } from '@ionic/angular';
import { SazaError } from 'src/app/providers/errors';

@Component({
selector: 'app-usage-terms',
templateUrl: './usage-terms.page.html',
styleUrls: ['./usage-terms.page.scss'],
})
export class UsageTermsPage {
constructor(private userService: UserService, private menu: MenuController) {}

ionViewWillEnter() {
this.userService
.isAuthValid()
.then((isValid) => {
if (!isValid) {
this.menu.enable(false);
}
})
.catch((e) => {
throw new SazaError('Unable to load user details.');
});
}

ionViewWillLeave() {
if (!this.menu.isEnabled()) {
this.menu.enable(true);
}
}
}

0 comments on commit 1c07c0a

Please sign in to comment.