One Paragraph of project description goes here
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
| import 'dart:async'; | |
| import 'package:flutter/material.dart'; | |
| import 'package:google_maps_flutter/google_maps_flutter.dart'; | |
| void main() => runApp(Main()); | |
| class Main extends StatefulWidget { | |
| @override | |
| _MainState createState() => _MainState(); |
| import 'dart:math'; | |
| import 'package:flutter/material.dart'; | |
| class DotsIndicator extends AnimatedWidget { | |
| const DotsIndicator({ | |
| @required this.controller, | |
| @required this.itemCount, | |
| @required this.onPageSelected, | |
| this.color = Colors.white, |
| import { AbstractControl, ValidatorFn } from '@angular/forms'; | |
| import libphonenumber from 'google-libphonenumber'; | |
| export class PhoneValidator { | |
| // Inspired on: https://github.com/yuyang041060120/ng2-validation/blob/master/src/equal-to/validator.ts | |
| static validCountryPhone = (countryControl: AbstractControl): ValidatorFn => { | |
| let subscribe: boolean = false; | |
| return (phoneControl: AbstractControl): {[key: string]: boolean} => { |
| //Complete example for Ionic Framework in: https://ionicthemes.com/tutorials/about/forms-and-validation-in-ionic | |
| //Complete example for Angular 5 in: https://angular-templates.io/tutorials/about/angular-forms-and-validations | |
| import { AbstractControl, ValidatorFn } from '@angular/forms'; | |
| import * as libphonenumber from 'google-libphonenumber'; | |
| export class PhoneValidator { | |
| // Inspired on: https://github.com/yuyang041060120/ng2-validation/blob/master/src/equal-to/validator.ts | |
| static validCountryPhone = (countryControl: AbstractControl): ValidatorFn => { |
| import { FormControl, FormGroup } from '@angular/forms'; | |
| export class PasswordValidator { | |
| static areEqual(formGroup: FormGroup) { | |
| let val; | |
| let valid = true; | |
| for (let key in formGroup.controls) { | |
| if (formGroup.controls.hasOwnProperty(key)) { | |
| let control: FormControl = <FormControl>formGroup.controls[key]; |
| import { PasswordValidator } from '../../validators/password.validator'; | |
| this.matching_passwords_group = new FormGroup({ | |
| password: new FormControl('', Validators.compose([ | |
| Validators.minLength(5), | |
| Validators.required, | |
| Validators.pattern('^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])[a-zA-Z0-9]+$') //this is for the letters (both uppercase and lowercase) and numbers validation | |
| ])), | |
| confirm_password: new FormControl('', Validators.required) | |
| }, (formGroup: FormGroup) => { | |
| return PasswordValidator.areEqual(formGroup); |
| #!/bin/sh | |
| # | |
| # @author: Jabran Rafique <[email protected]> | |
| # @link: http://jabran.me/articles/automatic-database-backup-using-git-hosting/ | |
| # Set variables | |
| FULLDATE = $(date +"%Y-%d-%m %H:%M") | |
| NOW = $(date +"%Y-%m-%d-%H-%M") | |
| MYSQL_DUMP = `which mysqldump` | |
| GIT = `which git` |