suggest page

This commit is contained in:
CHIEFSOFT\ameye
2023-09-17 06:52:11 -04:00
parent 7c3899242f
commit 0f18bccdd8
12 changed files with 656 additions and 97 deletions
+2
View File
@@ -29,3 +29,5 @@ npx cap sync
https://github.com/capacitor-community/barcode-scanner
ionic generate page startscan
ionic generate page suggest
+4
View File
@@ -218,6 +218,10 @@ const routes: Routes = [
path: 'startscan',
loadChildren: () => import('./pages/startscan/startscan.module').then(m => m.StartscanPageModule)
},
{
path: 'suggest',
loadChildren: () => import('./pages/suggest/suggest.module').then(m => m.SuggestPageModule)
},
];
@NgModule({
@@ -10,6 +10,8 @@
<!-- <ion-icon slot="start" name="arrow-back" class="back" (click)="onBack()"></ion-icon>-->
<!-- </div>-->
<!-- </div>-->
<div class="boxed_contents">
<ion-grid>
<ion-row>
<ion-col>
@@ -25,7 +27,7 @@
<div class="ion-padding space">
<div>
<div class="boxed_contents">
<ion-label class="simp_lbl">Family Login</ion-label>
<ion-item lines="none">
<ion-icon slot="start" name="mail-outline"></ion-icon>
@@ -55,7 +57,7 @@
<ion-label class="last_lbl">Have an account? <span (click)="userLogin()">login</span></ion-label>
</div>
</div>
</div>
</div>
<!-- <ion-grid>-->
+87 -85
View File
@@ -2,118 +2,120 @@
<div class="page_logo">
<img alt="WrenchBoard" src="/assets/images/wrenchboard-line.png" />
</div>
<div class="ion-padding space">
<div *ngIf="signup_state==1; then startBlock"></div>
<div *ngIf="signup_state==2; then secondBlock"></div>
<ng-template #startBlock>
<div>
<div class="boxed_contents">
<div class="ion-padding space">
<div *ngIf="signup_state==1; then startBlock"></div>
<div *ngIf="signup_state==2; then secondBlock"></div>
<ng-template #startBlock>
<div>
<ion-label class="simp_lbl">Create Your Account</ion-label>
<ion-item lines="none">
<ion-select label="Default label" placeholder="Select Country" [(ngModel)]='country'>
<ion-select-option value="NG">Nigeria</ion-select-option>
<ion-select-option value="US">United States</ion-select-option>
</ion-select>
<!-- <ion-label>Nigeria</ion-label>-->
<!-- <ion-icon name="caret-down-outline"></ion-icon>-->
</ion-item>
<ion-label class="simp_lbl">Create Your Account</ion-label>
<ion-item lines="none">
<ion-select label="Default label" placeholder="Select Country" [(ngModel)]='country'>
<ion-select-option value="NG">Nigeria</ion-select-option>
<ion-select-option value="US">United States</ion-select-option>
</ion-select>
<!-- <ion-label>Nigeria</ion-label>-->
<!-- <ion-icon name="caret-down-outline"></ion-icon>-->
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="person-outline"></ion-icon>
<ion-input type="firstname" placeholder="Firstname" [(ngModel)]='firstname'></ion-input>
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="person-outline"></ion-icon>
<ion-input type="firstname" placeholder="Firstname" [(ngModel)]='firstname'></ion-input>
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="person-outline"></ion-icon>
<ion-input type="lastname" placeholder="Lastname" [(ngModel)]='lastname'></ion-input>
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="person-outline"></ion-icon>
<ion-input type="lastname" placeholder="Lastname" [(ngModel)]='lastname'></ion-input>
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="mail-outline"></ion-icon>
<ion-input type="username" placeholder="Email (your username)" [(ngModel)]='username'></ion-input>
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="mail-outline"></ion-icon>
<ion-input type="username" placeholder="Email (your username)" [(ngModel)]='username'></ion-input>
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="lock-closed-outline"></ion-icon>
<ion-input type="password" placeholder="Password" [(ngModel)]='password'></ion-input>
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="lock-closed-outline"></ion-icon>
<ion-input type="password" placeholder="Password" [(ngModel)]='password'></ion-input>
</ion-item>
<!-- <ion-item lines="none">-->
<!-- <ion-icon slot="start" name="lock-closed-outline"></ion-icon>-->
<!-- <ion-input type="password" placeholder="Confirm Password"></ion-input>-->
<!-- </ion-item>-->
<!-- <ion-item lines="none">-->
<!-- <ion-icon slot="start" name="lock-closed-outline"></ion-icon>-->
<!-- <ion-input type="password" placeholder="Confirm Password"></ion-input>-->
<!-- </ion-item>-->
<ion-button expand="block" (click)="onFillProfile()">
Register
</ion-button>
<ion-button expand="block" (click)="onFillProfile()">
Register
</ion-button>
<div *ngIf="showSocial == true ">
<div *ngIf="showSocial == true ">
<ion-label class="or">Or Continue With</ion-label>
<ion-label class="or">Or Continue With</ion-label>
<div class="button">
<ion-buttons>
<ion-button>
<ion-icon name="logo-facebook"></ion-icon>
</ion-button>
</ion-buttons>
<div class="button">
<ion-buttons>
<ion-button>
<ion-icon name="logo-facebook"></ion-icon>
</ion-button>
</ion-buttons>
<ion-buttons>
<ion-button>
<ion-icon name="logo-google"></ion-icon>
</ion-button>
</ion-buttons>
<ion-buttons>
<ion-button>
<ion-icon name="logo-google"></ion-icon>
</ion-button>
</ion-buttons>
<ion-buttons>
<ion-button>
<ion-icon name="logo-twitter"></ion-icon>
</ion-button>
</ion-buttons>
<ion-buttons>
<ion-button>
<ion-icon name="logo-twitter"></ion-icon>
</ion-button>
</ion-buttons>
</div>
</div>
</div>
</ng-template>
<ng-template #secondBlock>
<div>
</div>
</ng-template>
<ng-template #secondBlock>
<div>
<ion-label class="simp_lbl">Complete Account</ion-label>
<ion-label class="simp_lbl">Complete Account</ion-label>
<ion-grid>
<ion-row>
<ion-grid>
<ion-row>
<ion-col size-md="3">Country</ion-col>
<ion-col size-md="9">{{signup_country}}</ion-col>
</ion-row>
<ion-row>
<ion-col size-md="3">Username</ion-col>
<ion-col size-md="9">{{signup_username}}</ion-col>
</ion-row>
</ion-grid>
<ion-label class="or">Enter Confirmation Received In Email</ion-label>
<ion-item lines="none">
<ion-icon slot="start" name="mail-outline"></ion-icon>
<ion-input type="username" placeholder="Random text" [(ngModel)]='random_text'></ion-input>
</ion-item>
</ion-row>
<ion-row>
<ion-col size-md="3">Username</ion-col>
<ion-col size-md="9">{{signup_username}}</ion-col>
</ion-row>
</ion-grid>
<ion-label class="or">Enter Confirmation Received In Email</ion-label>
<ion-item lines="none">
<ion-icon slot="start" name="mail-outline"></ion-icon>
<ion-input type="username" placeholder="Random text" [(ngModel)]='random_text'></ion-input>
</ion-item>
<ion-item lines="none">
<ion-icon slot="start" name="lock-closed-outline"></ion-icon>
<ion-input type="password" placeholder="Password" [(ngModel)]='password'></ion-input>
</ion-item>
<ion-button expand="block" (click)="onCompleteProfile()">
Complete signup
</ion-button>
<ion-item lines="none">
<ion-icon slot="start" name="lock-closed-outline"></ion-icon>
<ion-input type="password" placeholder="Password" [(ngModel)]='password'></ion-input>
</ion-item>
<ion-button expand="block" (click)="onCompleteProfile()">
Complete signup
</ion-button>
</div>
</ng-template>
<div class="bottom">
<ion-label class="last_lbl">Already have an account? <span (click)="onLogin()">Login</span></ion-label>
</div>
</ng-template>
<div class="bottom">
<ion-label class="last_lbl">Already have an account? <span (click)="onLogin()">Login</span></ion-label>
</div>
</div>
</ion-content>
@@ -0,0 +1,17 @@
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { SuggestPage } from './suggest.page';
const routes: Routes = [
{
path: '',
component: SuggestPage
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
})
export class SuggestPageRoutingModule {}
+20
View File
@@ -0,0 +1,20 @@
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { IonicModule } from '@ionic/angular';
import { SuggestPageRoutingModule } from './suggest-routing.module';
import { SuggestPage } from './suggest.page';
@NgModule({
imports: [
CommonModule,
FormsModule,
IonicModule,
SuggestPageRoutingModule
],
declarations: [SuggestPage]
})
export class SuggestPageModule {}
+71
View File
@@ -0,0 +1,71 @@
<ion-content>
<div class="bg_image back_image" [style.backgroundImage]="'url(assets/images/p4.jpg)'">
<div class="ion-padding">
<ion-icon slot="start" name="arrow-back" class="back" (click)="onBack()"></ion-icon>
</div>
</div>
<div class="ion-padding">
<div class="boxed_contents">
<div class="flex">
<ion-label class="bold_text">Suggest Task(s)</ion-label>
<!-- <ion-icon slot="end" name="bookmark-outline" color="primary"></ion-icon>-->
</div>
<div class="row">
<!-- <ion-label class="bg_text">3D Design</ion-label>-->
<!-- <div class="rate">-->
<!-- <ion-icon name="star-half-outline" color="warning"></ion-icon>-->
<!-- <ion-label class="review">4.8 (4478 reviews)</ion-label>-->
<!-- </div>-->
</div>
<!-- <ion-label class="color_text">$40</ion-label>-->
<div class="items">
<!-- <div class="stud">-->
<!-- <ion-icon slot="start" name="people" color="primary"></ion-icon>-->
<!-- <ion-label>9876 Students</ion-label>-->
<!-- </div>-->
<!-- <div class="stud">-->
<!-- <ion-icon slot="start" name="time" color="primary"></ion-icon>-->
<!-- <ion-label>2.5 hours</ion-label>-->
<!-- </div>-->
<!-- <div class="stud">-->
<!-- <ion-icon slot="start" name="document-text" color="primary"></ion-icon>-->
<!-- <ion-label>Certificate</ion-label>-->
<!-- </div>-->
</div>
<ion-segment [(ngModel)]="tabs">
<ion-segment-button value="about">
<ion-label>Find</ion-label>
</ion-segment-button>
<ion-segment-button value="lesson">
<ion-label>My List</ion-label>
</ion-segment-button>
<!-- <ion-segment-button value="review">-->
<!-- <ion-label>Reviews</ion-label>-->
<!-- </ion-segment-button>-->
</ion-segment>
<div *ngIf="tabs =='about'" class="about">
</div>
<div *ngIf="tabs =='lesson'" class="lesson">
</div>
</div>
</div>
</ion-content>
<!--<ion-footer>-->
<!-- <ion-toolbar>-->
<!-- <div class="button" (click)="onEnroll()">-->
<!-- <ion-label class="text">Enroll Course - $40</ion-label>-->
<!-- </div>-->
<!-- </ion-toolbar>-->
<!--</ion-footer>-->
+385
View File
@@ -0,0 +1,385 @@
ion-content {
.back_image {
width: 100%;
height: 230px;
.back {
font-size: 25px;
color: white;
}
}
.flex {
display: flex;
justify-content: space-between;
align-items: center;
ion-icon {
font-size: 22px;
}
}
.row {
display: flex;
align-items: center;
margin-top: 10px;
.bg_text {
color: var(--ion-color-primary);
background: #dfe1f3;
font-size: 12px;
padding: 2px 5px;
border-radius: 5px;
margin-right: 10px;
}
.rate {
display: flex;
align-items: center;
.review {
margin-left: 5px;
}
}
}
.color_text {
margin-top: 10px;
font-size: 22px;
font-family: 'semi-bold';
color: var(--ion-color-primary);
}
.items {
display: flex;
justify-content: space-between;
margin-top: 10px;
margin-bottom: 20px;
border-bottom: 1px solid lightgrey;
padding-bottom: 10px;
.stud {
display: flex;
align-items: center;
ion-icon {
margin-right: 5px;
}
ion-label {
color: grey;
}
}
}
.about {
margin-top: 10px;
.head_text {
font-size: 18px;
font-family: 'semi-bold';
margin-bottom: 10px;
}
.mentor {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
.left {
display: flex;
.men_image {
height: 50px;
width: 50px;
border-radius: 100%;
}
.bold {
font-family: 'semi-bold';
}
.grey {
color: grey;
font-size: 14px;
}
}
ion-icon {
font-size: 25px;
}
}
.description {
color: grey;
margin-bottom: 5px;
}
}
.lesson {
margin-top: 20px;
.bold {
font-family: 'semi-bold';
}
.color {
color: var(--ion-color-primary);
}
.grey {
color: grey;
}
.sec {
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 10px;
}
.video {
display: flex;
justify-content: space-between;
align-items: center;
background-color: white;
padding: 15px;
box-shadow: 0px 0px 20px 1px rgba(0, 0, 0, 0.1);
border-radius: 10px;
margin-top: 20px;
.left {
display: flex;
}
.men_image {
height: 40px;
width: 40px;
border-radius: 100%;
}
.text {
margin-left: 10px;
}
.bold_text {
font-size: 16px;
font-family: 'bold';
}
.grey_text {
font-size: 14px;
color: grey;
}
}
}
.review_tab {
margin-top: 20px;
.total {
display: flex;
align-items: center;
justify-content: space-between;
.star-rate {
display: flex;
align-items: center;
.bold {
font-size: 17px;
font-family: 'semi-bold';
margin-left: 5px;
}
}
.color {
color: var(--ion-color-primary);
font-size: 14px;
}
}
.story-item {
overflow: scroll;
display: flex;
flex-direction: row;
margin-top: 20px;
.menu {
width: 100%;
display: flex;
flex-direction: row;
.item {
padding: 5px;
margin: 5px;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
ion-thumbnail {
border-radius: 15px;
width: max-content;
height: 60px;
width: 60px;
--border-radius: 50%;
}
ion-label {
font-size: 14px;
font-family: "medium";
color: var(--ion-color-medium);
}
}
.text {
display: flex;
align-items: center;
text-align: center;
.select {
display: flex;
align-items: center;
border: 1px solid var(--ion-color-primary);
border-radius: 20px;
padding: 2px 15px;
margin-right: 10px;
.rate_num {
margin-left: 5px;
color: var(--ion-color-primary);
}
}
.show {
background-color: var(--ion-color-primary);
}
.white {
color: white !important;
}
.choice {
display: flex;
}
}
}
}
.reviw_list {
margin-top: 25px;
.profile {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 10px;
.left {
display: flex;
align-items: center;
.men_image {
height: 40px;
width: 40px;
border-radius: 100%;
}
.bold {
font-family: 'semi-bold';
}
.grey {
color: grey;
font-size: 14px;
}
}
.right {
display: flex;
align-items: center;
.select {
display: flex;
align-items: center;
border: 1px solid var(--ion-color-primary);
border-radius: 20px;
padding: 2px 15px;
margin-right: 10px;
.rate_num {
margin-left: 5px;
color: var(--ion-color-primary);
}
}
ion-icon {
font-size: 20px;
}
}
}
.like {
display: flex;
align-items: center;
margin-top: 10px;
.heart {
font-size: 25px;
margin-right: 5px;
}
.count {
margin-right: 10px;
}
.time {
color: grey;
font-size: 14px;
}
}
}
}
.bold_text {
font-size: 20px;
font-family: 'bold';
}
}
ion-footer {
--background: white;
ion-toolbar {
--border-width: 0px;
padding: 10px;
align-items: center;
ion-icon {
color: white;
font-size: 25px;
}
.button {
background-color: var(--ion-color-primary);
display: flex;
align-items: center;
justify-content: space-around;
border-radius: 30px;
padding: 12px 0;
.text {
color: white;
}
}
}
}
@@ -0,0 +1,24 @@
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
import { IonicModule } from '@ionic/angular';
import { SuggestPage } from './suggest.page';
describe('SuggestPage', () => {
let component: SuggestPage;
let fixture: ComponentFixture<SuggestPage>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ SuggestPage ],
imports: [IonicModule.forRoot()]
}).compileComponents();
fixture = TestBed.createComponent(SuggestPage);
component = fixture.componentInstance;
fixture.detectChanges();
}));
it('should create', () => {
expect(component).toBeTruthy();
});
});
+36
View File
@@ -0,0 +1,36 @@
import { Component, OnInit } from '@angular/core';
import {NavController} from "@ionic/angular";
import {Router} from "@angular/router";
@Component({
selector: 'app-suggest',
templateUrl: './suggest.page.html',
styleUrls: ['./suggest.page.scss'],
})
export class SuggestPage implements OnInit {
tabs = 'about';
constructor(
private navctr: NavController,
private router: Router
) { }
ngOnInit() {
}
onBack() {
this.navctr.back();
}
onMentor() {
this.router.navigate(['mentor']);
}
onEnroll() {
this.router.navigate(['enroll']);
}
}
+5 -9
View File
@@ -1,15 +1,7 @@
/*
Authors : initappz (Rahul Jograna)
Website : https://initappz.com/
App Name : E-Learning App Template
This App Template Source code is licensed as per the
terms found in the Website https://initappz.com/license
Copyright and Good Faith Purchasers © 2021-present initappz.
*/
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { TabsPage } from './tabs.page';
//suggest
const routes: Routes = [
{
path: '',
@@ -23,6 +15,10 @@ const routes: Routes = [
path: 'tab2',
loadChildren: () => import('../my-course/my-course.module').then(m => m.MyCoursePageModule)
},
{
path: 'suggest',
loadChildren: () => import('../suggest/suggest.module').then(m => m.SuggestPageModule)
},
{
path: 'tab3',
loadChildren: () => import('../inbox/inbox.module').then(m => m.InboxPageModule)
+1 -1
View File
@@ -8,7 +8,7 @@
<ion-label>Home</ion-label>
</ion-tab-button>
<ion-tab-button tab="tab2">
<ion-tab-button tab="suggest">
<ion-icon name="reader"></ion-icon>
<ion-label>Suggest</ion-label>
</ion-tab-button>