├── Django ├── EMS │ ├── README.md │ ├── elevator_system │ │ ├── __init__.py │ │ ├── __pycache__ │ │ │ ├── __init__.cpython-312.pyc │ │ │ ├── settings.cpython-312.pyc │ │ │ ├── urls.cpython-312.pyc │ │ │ └── wsgi.cpython-312.pyc │ │ ├── asgi.py │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py │ ├── elevators │ │ ├── __init__.py │ │ ├── __pycache__ │ │ │ ├── __init__.cpython-312.pyc │ │ │ ├── admin.cpython-312.pyc │ │ │ ├── apps.cpython-312.pyc │ │ │ ├── models.cpython-312.pyc │ │ │ ├── serializers.cpython-312.pyc │ │ │ ├── urls.cpython-312.pyc │ │ │ └── views.cpython-312.pyc │ │ ├── admin.py │ │ ├── apps.py │ │ ├── migrations │ │ │ ├── 0001_initial.py │ │ │ ├── __init__.py │ │ │ └── __pycache__ │ │ │ │ ├── 0001_initial.cpython-312.pyc │ │ │ │ └── __init__.cpython-312.pyc │ │ ├── models.py │ │ ├── serializers.py │ │ ├── tests.py │ │ ├── urls.py │ │ └── views.py │ ├── manage.py │ ├── static │ │ ├── css │ │ │ ├── app.css │ │ │ ├── bootstrap.min.css │ │ │ ├── font-awesome.min.css │ │ │ └── login.css │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ ├── fontawesome-webfont.woff │ │ │ └── fontawesome-webfont.woff2 │ │ └── js │ │ │ ├── app.js │ │ │ └── jquery.min.js │ └── templates │ │ ├── base.html │ │ ├── elements │ │ ├── format.html │ │ └── update_app.html │ │ ├── elevators.html │ │ ├── header.html │ │ └── registration │ │ └── login.html └── README.md ├── PHP └── CryptoFirst │ ├── Frontend │ ├── .gitattributes │ ├── .gitignore │ ├── aboutUS.php │ ├── blog.php │ ├── buy.php │ ├── contact.php │ ├── css │ │ ├── buySellSider.css │ │ ├── footer.css │ │ ├── header.css │ │ ├── homeBody.css │ │ ├── main.css │ │ └── subBody.css │ ├── faq.php │ ├── images │ │ ├── Augur03.png │ │ ├── Characters │ │ │ ├── 00.png │ │ │ ├── 01.png │ │ │ ├── 02.png │ │ │ ├── 03.png │ │ │ ├── 04.png │ │ │ ├── 05.png │ │ │ ├── 06.png │ │ │ ├── 07.png │ │ │ ├── 08.png │ │ │ ├── 09.png │ │ │ └── 0P.png │ │ ├── Reddit-recommend.png │ │ ├── Reddit-recommend_cur.png │ │ ├── Untitled-2.png │ │ ├── appMobile.png │ │ ├── bankTransfer.png │ │ ├── blockChain │ │ │ ├── DASH.png │ │ │ ├── DASH_C.png │ │ │ ├── DASH_W.png │ │ │ ├── ETC.png │ │ │ ├── ETC_C.png │ │ │ ├── ETC_W.png │ │ │ ├── ETH.png │ │ │ ├── ETH_C.png │ │ │ ├── ETH_W.png │ │ │ ├── GNO.png │ │ │ ├── GNO_C.png │ │ │ ├── LTC.png │ │ │ ├── LTC_C.png │ │ │ ├── LTC_W.png │ │ │ ├── REP.png │ │ │ ├── REP_C.png │ │ │ ├── XBT.png │ │ │ ├── XBT_C.png │ │ │ ├── XBT_W.png │ │ │ ├── XLM.png │ │ │ ├── XLM_C.png │ │ │ ├── XMR.png │ │ │ ├── XMR_C.png │ │ │ ├── XMR_W.png │ │ │ ├── XRP.png │ │ │ ├── XRP_C.png │ │ │ ├── XRP_W.png │ │ │ ├── ZEC.png │ │ │ ├── ZEC_C.png │ │ │ └── ZEC_W.png │ │ ├── blockChain03.png │ │ ├── blockChainSliderFrame.png │ │ ├── blogSymbol.png │ │ ├── buySelIcon01.png │ │ ├── calendar01.png │ │ ├── camera.png │ │ ├── cash.png │ │ ├── cash03.png │ │ ├── chain-01.png │ │ ├── chain-02.png │ │ ├── chain-03.png │ │ ├── chain-04.png │ │ ├── chain.png │ │ ├── chainWorldmap.png │ │ ├── chain_origin.png │ │ ├── cheap.png │ │ ├── circleGet.png │ │ ├── circleOrder.png │ │ ├── circlePay.png │ │ ├── closeButton.png │ │ ├── closeButton_hover.png │ │ ├── creditCard.png │ │ ├── currency │ │ │ ├── CAD.png │ │ │ ├── CAD_W.png │ │ │ ├── EUR.png │ │ │ ├── EUR_W.png │ │ │ ├── GBP.png │ │ │ ├── GBP_W.png │ │ │ ├── JPY.png │ │ │ ├── JPY_W.png │ │ │ ├── USD.png │ │ │ └── USD_W.png │ │ ├── currentFrame.png │ │ ├── down.png │ │ ├── downloadAppStoreIcon.png │ │ ├── easy.png │ │ ├── facbookIcon.png │ │ ├── faceIcon01.png │ │ ├── facebook-recommend.png │ │ ├── facebook-recommend_cur.png │ │ ├── facebook_add.png │ │ ├── faqCharacter01.png │ │ ├── fast.png │ │ ├── flags │ │ │ ├── flag-ae.png │ │ │ ├── flag-cn.png │ │ │ ├── flag-de.png │ │ │ ├── flag-es.png │ │ │ ├── flag-fr.png │ │ │ ├── flag-id.png │ │ │ ├── flag-in.png │ │ │ ├── flag-it.png │ │ │ ├── flag-jp.png │ │ │ ├── flag-pl.png │ │ │ ├── flag-pt.png │ │ │ ├── flag-ru.png │ │ │ └── flag-uk.png │ │ ├── giroPay03.png │ │ ├── glass_tab-white.png │ │ ├── glass_tab.png │ │ ├── gnsis03.png │ │ ├── google-recommend.png │ │ ├── google-recommend_cur.png │ │ ├── googlePlayButton.png │ │ ├── gov.png │ │ ├── gov_sel.png │ │ ├── hand01.png │ │ ├── hand02.png │ │ ├── human.png │ │ ├── human_photo.png │ │ ├── icon.png │ │ ├── images.jpg │ │ ├── inIcon.png │ │ ├── infoIcon01.png │ │ ├── international.png │ │ ├── laPost03.png │ │ ├── like01.png │ │ ├── likeButton.png │ │ ├── likeIcon.png │ │ ├── line3Icon.png │ │ ├── linkedin-recommend.png │ │ ├── linkedin-recommend_cur.png │ │ ├── live-tab.png │ │ ├── live-white.png │ │ ├── logo.png │ │ ├── loveCrypto.png │ │ ├── mail-tab.png │ │ ├── mail-white.png │ │ ├── mailBox.png │ │ ├── menuBack.png │ │ ├── msg main icon.png │ │ ├── neosurf03.png │ │ ├── neteuer03.png │ │ ├── okPay03.png │ │ ├── onlineHelp.png │ │ ├── paypal03.png │ │ ├── paysafecard03.png │ │ ├── pen-tab.png │ │ ├── pen-white.png │ │ ├── perfectMoney03.png │ │ ├── phone-tab.png │ │ ├── phone-white.png │ │ ├── phone.png │ │ ├── plane.png │ │ ├── privacy.png │ │ ├── privacy_sel.png │ │ ├── readIcon.png │ │ ├── readIcon_cur.png │ │ ├── recommendIcon.png │ │ ├── redirect.png │ │ ├── redirect_cur.png │ │ ├── regulate.png │ │ ├── reply.png │ │ ├── ring main icon.png │ │ ├── safe.png │ │ ├── scale.png │ │ ├── scale_sel.png │ │ ├── sepa03.png │ │ ├── separaterShadow.png │ │ ├── serviceSymbol01.png │ │ ├── shareButton.png │ │ ├── skrill03.png │ │ ├── skype main icon.png │ │ ├── slide-giroPay.png │ │ ├── slide-giroPay_cur.png │ │ ├── slide-laPoste.png │ │ ├── slide-laPoste_cur.png │ │ ├── slide-neosurf.png │ │ ├── slide-neosurf_cur.png │ │ ├── slide-neteuer.png │ │ ├── slide-neteuer_cur.png │ │ ├── slide-okPay.png │ │ ├── slide-okPay_cur.png │ │ ├── slide-paySafe.png │ │ ├── slide-paySafe_cur.png │ │ ├── slide-paypal.png │ │ ├── slide-paypal_cur.png │ │ ├── slide-perfectMoney.png │ │ ├── slide-perfectMoney_cur.png │ │ ├── slide-sepa.png │ │ ├── slide-sepa_cur.png │ │ ├── slide-skrill.png │ │ ├── slide-skrill_cur.png │ │ ├── slide-sofort.png │ │ ├── slide-sofort_cur.png │ │ ├── slide-visa.png │ │ ├── slide-visa_cur.png │ │ ├── slide-webMoney.png │ │ ├── slide-webMoney_cur.png │ │ ├── slide-westernUnion.png │ │ ├── slide-westernUnion_cur.png │ │ ├── slide-wireTransfer.png │ │ ├── slide-wireTransfer_cur.png │ │ ├── smallChain.png │ │ ├── smartImage.jpg │ │ ├── smile.png │ │ ├── sofort03.png │ │ ├── spin.png │ │ ├── stellarLumens03.png │ │ ├── tChat.png │ │ ├── tab-chain-white.png │ │ ├── tab-chain.png │ │ ├── telegram_add.png │ │ ├── twitter main icon.png │ │ ├── twitter-recommend.png │ │ ├── twitter-recommend_cur.png │ │ ├── twitter.jpg │ │ ├── twitterIcon.png │ │ ├── upCharacter.png │ │ ├── viewRateLeft.png │ │ ├── viewRateMiddle.png │ │ ├── viewRateRight.png │ │ ├── visa03.png │ │ ├── webMoney03.png │ │ ├── westernUnion03.png │ │ ├── wireTransfer03.png │ │ ├── worldmap-01.png │ │ └── worldmap01.png │ ├── inc │ │ ├── blogContents.php │ │ ├── contentsFAQ.php │ │ ├── footer.php │ │ ├── header.php │ │ ├── home_body.php │ │ ├── quickLogin.php │ │ └── quickSignup.php │ ├── index.php │ ├── js │ │ ├── actions.js │ │ ├── ajax.js │ │ └── jquery-3.2.1-min.js │ ├── lang │ │ └── en.php │ ├── modules │ │ ├── captcha.php │ │ ├── getBTCRate.php │ │ └── get_initial_params.php │ └── terms.php │ └── README.md ├── README.md ├── React ├── Components │ ├── Wordart │ │ ├── index.jsx │ │ └── style.css │ ├── clock │ │ ├── index.jsx │ │ └── style.css │ ├── iconInput │ │ ├── index.jsx │ │ └── style.css │ ├── imageInput │ │ ├── index.jsx │ │ └── style.css │ ├── itemList │ │ ├── index.jsx │ │ └── style.css │ ├── searchBar │ │ ├── index.jsx │ │ └── style.css │ ├── select-search │ │ ├── index.jsx │ │ └── style.css │ ├── switch │ │ ├── index.jsx │ │ └── style.css │ └── table │ │ ├── index.jsx │ │ └── style.css └── README.md └── Typescript └── CRUD ├── .gitignore ├── client ├── .gitignore ├── README.md ├── package-lock.json ├── package.json ├── public │ ├── favicon.ico │ ├── index.html │ ├── logo192.png │ ├── logo512.png │ ├── manifest.json │ └── robots.txt ├── src │ ├── App.tsx │ ├── api │ │ └── api.ts │ ├── index.css │ └── index.tsx └── tsconfig.json ├── readme.md └── server ├── .env ├── config ├── db.ts └── dbpost.ts ├── index.ts ├── package-lock.json ├── package.json ├── routes └── api.ts └── tsconfig.json /Django/EMS/README.md: -------------------------------------------------------------------------------- 1 | # Elevator System # 2 | 3 | !(https://github.com/SolomonNewCentury/Elevator) 4 | 5 | A elevator system which goes up, down and stops built with Django(Django Rest Framework including Viewsets, Serializers and etc.) 6 | 7 | ## Architecture ## 8 | - When a user logs in, the frontend downloads the elevator list set already. In first case, there will be no elevator set in elevator list 9 | - So, users can set the number of elevators by clicking format button bellow login button. Then this elevator system is initialized. 10 | While using this system, users can initialize system like this. 11 | - After that, elevators are displayed in interface. 12 | - Each elevator is divided into two status: opened or closed 13 | - Each elevator contains follow things: 14 | . floor that elevator is located 15 | . floor to go up or down based on request of user 16 | . status to mark whether elevator is in maintenance or not 17 | . status to mark whether elevator is operational or not 18 | . status to mark whether elevator has to go up or down 19 | . status to mark whether elevator is running or not 20 | - Users can change all of these things by clicking Edit button 21 | - Users can use only elevator that is operational and not in maintenance, not in running and set clear destination 22 | 23 | 24 | ### Requests ### 25 | 26 | 27 | **update 04/06/19** 28 | 29 | - using pipenv for package management 30 | - move to Channels 2 31 | - use redis as the channel layer backing store. for more information, please check [channels_redis](https://github.com/django/channels_redis) 32 | 33 | ### Database ### 34 | For this system, I have used postgreSQL. 35 | In using of this, you has to consider about version of postgreSQL and django. I used django 5.0 and postgreSQL 16.1 36 | 37 | ## Assumptions ## 38 | 39 | Because of time constraints this project lacks of: 40 | 41 | - User Sign-Up / Forgot Password 42 | - Good Test Coverage 43 | - Better Comments / Documentation Strings 44 | - Frontend & Backend Tests 45 | - Modern Frontend Framework (like React) 46 | - Proper UX / UI design (looks plain bootstrap) 47 | 48 | ## Run ## 49 | 50 | 0. Download and Install latest version of python 51 | 52 | 1. Create and activate a virtualenv (Python 3) 53 | ```bash 54 | pipenv --python 3 shell 55 | ``` 56 | 2. Install requirements 57 | ```bash 58 | pipenv install 59 | ``` 60 | 3. Create a MySQL database 61 | ```sql 62 | CREATE DATABASE chat CHARACTER SET utf8; 63 | ``` 64 | 4. Start Redis Server 65 | ```bash 66 | redis-server 67 | ``` 68 | 69 | 5. Init database 70 | ```bash 71 | ./manage.py migrate 72 | ``` 73 | 6. Run tests 74 | ```bash 75 | ./manage.py test 76 | ``` 77 | 78 | 7. Create admin user 79 | ```bash 80 | ./manage.py createsuperuser 81 | ``` 82 | 83 | 8. Run development server 84 | ```bash 85 | ./manage.py runserver 86 | -------------------------------------------------------------------------------- /Django/EMS/elevator_system/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevator_system/__init__.py -------------------------------------------------------------------------------- /Django/EMS/elevator_system/__pycache__/__init__.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevator_system/__pycache__/__init__.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevator_system/__pycache__/settings.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevator_system/__pycache__/settings.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevator_system/__pycache__/urls.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevator_system/__pycache__/urls.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevator_system/__pycache__/wsgi.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevator_system/__pycache__/wsgi.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevator_system/asgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | ASGI config for elevator_system project. 3 | 4 | It exposes the ASGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/5.0/howto/deployment/asgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.asgi import get_asgi_application 13 | 14 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'elevator_system.settings') 15 | 16 | application = get_asgi_application() 17 | -------------------------------------------------------------------------------- /Django/EMS/elevator_system/settings.py: -------------------------------------------------------------------------------- 1 | """ 2 | Django settings for elevator_system project. 3 | 4 | Generated by 'django-admin startproject' using Django 5.0. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/5.0/topics/settings/ 8 | 9 | For the full list of settings and their values, see 10 | https://docs.djangoproject.com/en/5.0/ref/settings/ 11 | """ 12 | 13 | from pathlib import Path 14 | import os 15 | 16 | # Build paths inside the project like this: BASE_DIR / 'subdir'. 17 | BASE_DIR = Path(__file__).resolve().parent.parent 18 | 19 | 20 | # Quick-start development settings - unsuitable for production 21 | # See https://docs.djangoproject.com/en/5.0/howto/deployment/checklist/ 22 | 23 | # SECURITY WARNING: keep the secret key used in production secret! 24 | SECRET_KEY = 'django-insecure-#bo&+drcp=^59i#8%i!1@9g%5k-vq(v--egl_addef228622rx' 25 | 26 | # SECURITY WARNING: don't run with debug turned on in production! 27 | DEBUG = True 28 | 29 | ALLOWED_HOSTS = [] 30 | 31 | 32 | # Application definition 33 | 34 | INSTALLED_APPS = [ 35 | 'django.contrib.admin', 36 | 'django.contrib.auth', 37 | 'django.contrib.contenttypes', 38 | 'django.contrib.sessions', 39 | 'django.contrib.messages', 40 | 'django.contrib.staticfiles', 41 | 42 | #apps added by developer 43 | 'elevators', 44 | 'rest_framework', 45 | ] 46 | 47 | MIDDLEWARE = [ 48 | 'django.middleware.security.SecurityMiddleware', 49 | 'django.contrib.sessions.middleware.SessionMiddleware', 50 | 'django.middleware.common.CommonMiddleware', 51 | # 'django.middleware.csrf.CsrfViewMiddleware', 52 | 'django.contrib.auth.middleware.AuthenticationMiddleware', 53 | 'django.contrib.messages.middleware.MessageMiddleware', 54 | 'django.middleware.clickjacking.XFrameOptionsMiddleware', 55 | ] 56 | 57 | ROOT_URLCONF = 'elevator_system.urls' 58 | 59 | TEMPLATES = [ 60 | { 61 | 'BACKEND': 'django.template.backends.django.DjangoTemplates', 62 | 'DIRS': [os.path.join(BASE_DIR, 'templates')], 63 | 'APP_DIRS': True, 64 | 'OPTIONS': { 65 | 'context_processors': [ 66 | 'django.template.context_processors.debug', 67 | 'django.template.context_processors.request', 68 | 'django.contrib.auth.context_processors.auth', 69 | 'django.contrib.messages.context_processors.messages', 70 | ], 71 | }, 72 | }, 73 | ] 74 | 75 | WSGI_APPLICATION = 'elevator_system.wsgi.application' 76 | 77 | # Database 78 | # https://docs.djangoproject.com/en/5.0/ref/settings/#databases 79 | 80 | DATABASES = { 81 | 'default': { 82 | 'ENGINE': 'django.db.backends.postgresql', 83 | 'NAME': 'elevator', 84 | 'USER': 'postgres', 85 | 'PASSWORD': 'passioner', 86 | 'OPTIONS': { 87 | } 88 | } 89 | } 90 | 91 | 92 | # Password validation 93 | # https://docs.djangoproject.com/en/5.0/ref/settings/#auth-password-validators 94 | 95 | AUTH_PASSWORD_VALIDATORS = [ 96 | { 97 | 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', 98 | }, 99 | { 100 | 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', 101 | }, 102 | { 103 | 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', 104 | }, 105 | { 106 | 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', 107 | }, 108 | ] 109 | 110 | REST_FRAMEWORK = { 111 | 'DEFAULT_PERMISSION_CLASSES': [ 112 | 'rest_framework.permissions.IsAuthenticated' 113 | ], 114 | 'DEFAULT_PAGINATION_CLASS': 115 | 'rest_framework.pagination.LimitOffsetPagination', 116 | 'PAGE_SIZE': 100 117 | } 118 | 119 | # Internationalization 120 | # https://docs.djangoproject.com/en/5.0/topics/i18n/ 121 | 122 | LANGUAGE_CODE = 'en-us' 123 | 124 | TIME_ZONE = 'UTC' 125 | 126 | USE_I18N = True 127 | 128 | USE_TZ = True 129 | 130 | 131 | # Static files (CSS, JavaScript, Images) 132 | # https://docs.djangoproject.com/en/5.0/howto/static-files/ 133 | 134 | # Collect static files here 135 | STATIC_ROOT = os.path.join(BASE_DIR, 'run', 'static_root') 136 | 137 | # look for static assets here 138 | STATICFILES_DIRS = [ 139 | os.path.join(BASE_DIR, 'static'), 140 | ] 141 | 142 | STATIC_URL = 'static/' 143 | 144 | LOGIN_REDIRECT_URL = '/' 145 | LOGIN_URL = '/login/' 146 | 147 | # Default primary key field type 148 | # https://docs.djangoproject.com/en/5.0/ref/settings/#default-auto-field 149 | 150 | DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' 151 | -------------------------------------------------------------------------------- /Django/EMS/elevator_system/urls.py: -------------------------------------------------------------------------------- 1 | """ 2 | URL configuration for elevator_system project. 3 | 4 | The `urlpatterns` list routes URLs to views. For more information please see: 5 | https://docs.djangoproject.com/en/5.0/topics/http/urls/ 6 | Examples: 7 | Function views 8 | 1. Add an import: from my_app import views 9 | 2. Add a URL to urlpatterns: path('', views.home, name='home') 10 | Class-based views 11 | 1. Add an import: from other_app.views import Home 12 | 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') 13 | Including another URLconf 14 | 1. Import the include() function: from django.urls import include, path 15 | 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) 16 | """ 17 | from django.contrib import admin 18 | from django.urls import path, include 19 | from django.contrib.auth import views as auth_views 20 | 21 | urlpatterns = [ 22 | path('admin/', admin.site.urls), 23 | path('', include('elevators.urls')), 24 | path('login/', auth_views.LoginView.as_view(), name='login'), 25 | path('logout/', auth_views.LogoutView.as_view(), {'next_page': '/'}, name='logout') 26 | ] 27 | -------------------------------------------------------------------------------- /Django/EMS/elevator_system/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for elevator_system project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/5.0/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'elevator_system.settings') 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /Django/EMS/elevators/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/__init__.py -------------------------------------------------------------------------------- /Django/EMS/elevators/__pycache__/__init__.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/__pycache__/__init__.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/__pycache__/admin.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/__pycache__/admin.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/__pycache__/apps.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/__pycache__/apps.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/__pycache__/models.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/__pycache__/models.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/__pycache__/serializers.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/__pycache__/serializers.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/__pycache__/urls.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/__pycache__/urls.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/__pycache__/views.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/__pycache__/views.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | from elevators.models import Elevator, Request 3 | 4 | # Register your models here. 5 | admin.site.register(Elevator) 6 | admin.site.register(Request) -------------------------------------------------------------------------------- /Django/EMS/elevators/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class ElevatorsConfig(AppConfig): 5 | default_auto_field = 'django.db.models.BigAutoField' 6 | name = 'elevators' 7 | -------------------------------------------------------------------------------- /Django/EMS/elevators/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 5.0 on 2024-01-03 06:25 2 | 3 | import django.db.models.deletion 4 | from django.db import migrations, models 5 | 6 | 7 | class Migration(migrations.Migration): 8 | 9 | initial = True 10 | 11 | dependencies = [ 12 | ] 13 | 14 | operations = [ 15 | migrations.CreateModel( 16 | name='Elevator', 17 | fields=[ 18 | ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 19 | ('operational', models.BooleanField(default=True)), 20 | ('in_maintenance', models.BooleanField(default=False)), 21 | ('current_floor', models.IntegerField(default=1)), 22 | ('moving_up', models.BooleanField(default=False)), 23 | ('door_open', models.BooleanField(default=False)), 24 | ], 25 | ), 26 | migrations.CreateModel( 27 | name='Request', 28 | fields=[ 29 | ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 30 | ('requested_floor', models.IntegerField()), 31 | ('created_at', models.DateTimeField(auto_now_add=True)), 32 | ('elevator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='elevators.elevator')), 33 | ], 34 | ), 35 | ] 36 | -------------------------------------------------------------------------------- /Django/EMS/elevators/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/migrations/__init__.py -------------------------------------------------------------------------------- /Django/EMS/elevators/migrations/__pycache__/0001_initial.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/migrations/__pycache__/0001_initial.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/migrations/__pycache__/__init__.cpython-312.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/elevators/migrations/__pycache__/__init__.cpython-312.pyc -------------------------------------------------------------------------------- /Django/EMS/elevators/models.py: -------------------------------------------------------------------------------- 1 | # elevators/models.py 2 | from django.db import models 3 | 4 | # Create your models here. 5 | 6 | class Elevator(models.Model): 7 | operational = models.BooleanField(default=True) 8 | in_maintenance = models.BooleanField(default=False) 9 | current_floor = models.IntegerField(default=1) 10 | moving_up = models.BooleanField(default=False) 11 | door_open = models.BooleanField(default=False) 12 | 13 | class Request(models.Model): 14 | elevator = models.ForeignKey(Elevator, on_delete=models.CASCADE) 15 | requested_floor = models.IntegerField() 16 | created_at = models.DateTimeField(auto_now_add=True) 17 | -------------------------------------------------------------------------------- /Django/EMS/elevators/serializers.py: -------------------------------------------------------------------------------- 1 | # elevators/serializers.py 2 | from rest_framework import serializers 3 | from .models import Elevator, Request 4 | 5 | class ElevatorSerializer(serializers.ModelSerializer): 6 | class Meta: 7 | model = Elevator 8 | fields = '__all__' 9 | 10 | class RequestSerializer(serializers.ModelSerializer): 11 | class Meta: 12 | model = Request 13 | fields = '__all__' -------------------------------------------------------------------------------- /Django/EMS/elevators/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /Django/EMS/elevators/urls.py: -------------------------------------------------------------------------------- 1 | # elevators/urls.py 2 | from rest_framework import routers 3 | from django.urls import path, include 4 | from django.views.generic import TemplateView 5 | from django.contrib.auth.decorators import login_required 6 | from .views import ElevatorViewSet, RequestViewSet, init_elevator_system, door_control, edit_system, run_system 7 | router = routers.DefaultRouter() 8 | 9 | router.register(r'elevators', ElevatorViewSet) 10 | router.register(r'requests', RequestViewSet) 11 | 12 | urlpatterns = [ 13 | path(r'api/', include(router.urls)), 14 | path('', login_required(TemplateView.as_view(template_name='elevators.html')), name='home'), 15 | path(r'init/', login_required(init_elevator_system), name='init'), 16 | path(r'door/', login_required(door_control), name='door'), 17 | path(r'edit/', login_required(edit_system), name='edit'), 18 | path(r'run/', login_required(run_system), name='run'), 19 | ] -------------------------------------------------------------------------------- /Django/EMS/elevators/views.py: -------------------------------------------------------------------------------- 1 | # elevators/views.py 2 | from rest_framework import viewsets 3 | from .models import Elevator, Request 4 | from .serializers import ElevatorSerializer, RequestSerializer 5 | from django.http import HttpResponse 6 | 7 | from datetime import datetime 8 | 9 | from django.db import connection 10 | 11 | class ElevatorViewSet(viewsets.ModelViewSet): 12 | queryset = Elevator.objects.all() 13 | serializer_class = ElevatorSerializer 14 | 15 | class RequestViewSet(viewsets.ModelViewSet): 16 | queryset = Request.objects.all() 17 | serializer_class = RequestSerializer 18 | 19 | # Function to init elevator system 20 | def init_elevator_system(request): 21 | objects = Elevator.objects.all() 22 | # delete elevators set earlier 23 | objects.delete() 24 | # create new elevators according to the requested number of elevator 25 | for i in range(int(request.POST.get('num'))): 26 | newObjects = Elevator() 27 | newObjects.save() 28 | return HttpResponse('ok') 29 | 30 | # Function to open & close the door according to the requested id of elevator 31 | def door_control(request): 32 | id = int(request.POST.get('id')) 33 | with connection.cursor() as cursor: 34 | cursor.execute('UPDATE "elevators_elevator" SET "door_open" = %s WHERE id = %s', [request.POST.get('type'), id]) 35 | return HttpResponse('ok') 36 | 37 | # Function to run given elevator 38 | def run_system(request): 39 | id = int(request.POST.get('id')) 40 | with connection.cursor() as cursor: 41 | cursor.execute('UPDATE "elevators_elevator" SET "moving_up" = %s, "current_floor" = %s WHERE id = %s', [request.POST.get('moving_up'), int(request.POST.get("current_floor")), id]) 42 | return HttpResponse('ok') 43 | 44 | # Fucntion to update the status of given elevator 45 | def edit_system(request): 46 | id = int(request.POST.get("id")) 47 | with connection.cursor() as cursor: 48 | cursor.execute('UPDATE "elevators_elevator" SET "in_maintenance" = %s, "operational" = %s WHERE id = %s', [request.POST.get('in_maintenance'), request.POST.get("operational"), id]) 49 | # Decide to go up or down to which floor 50 | if (int(request.POST.get("to_floor")) != 0): 51 | if (request.POST.get("edit_type") == 'true'): 52 | objects = Request.objects.get(elevator_id = id) 53 | objects.requested_floor = int(request.POST.get('to_floor')) 54 | objects.save() 55 | elif (request.POST.get("edit_type") == 'false'): 56 | objects = Request( 57 | requested_floor = int(request.POST.get('to_floor')), elevator_id = id, 58 | created_at = datetime.now() 59 | ) 60 | objects.save() 61 | return HttpResponse('ok') 62 | -------------------------------------------------------------------------------- /Django/EMS/manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | """Django's command-line utility for administrative tasks.""" 3 | import os 4 | import sys 5 | 6 | 7 | def main(): 8 | """Run administrative tasks.""" 9 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'elevator_system.settings') 10 | try: 11 | from django.core.management import execute_from_command_line 12 | except ImportError as exc: 13 | raise ImportError( 14 | "Couldn't import Django. Are you sure it's installed and " 15 | "available on your PYTHONPATH environment variable? Did you " 16 | "forget to activate a virtual environment?" 17 | ) from exc 18 | execute_from_command_line(sys.argv) 19 | 20 | 21 | if __name__ == '__main__': 22 | main() 23 | -------------------------------------------------------------------------------- /Django/EMS/static/css/app.css: -------------------------------------------------------------------------------- 1 | .elevator-app { 2 | margin: 0 10px; 3 | background-color: rgb(225, 227, 235); 4 | height: 510px; 5 | overflow: auto; 6 | } 7 | 8 | #formatApp { 9 | position: absolute; 10 | background-color: white; 11 | border-radius: 5px; 12 | box-shadow: 0 0 4px 3px rgb(218, 215, 215); 13 | width:34%; 14 | height: auto; 15 | left: 33%; 16 | top: 30%; 17 | padding: 0 10px; 18 | display: none; 19 | } 20 | 21 | #updateApp { 22 | position: absolute; 23 | background-color: white; 24 | border-radius: 5px; 25 | box-shadow: 0 0 4px 3px rgb(218, 215, 215); 26 | width:34%; 27 | height: auto; 28 | left: 33%; 29 | top: 25%; 30 | padding: 0 10px; 31 | display: none; 32 | } 33 | 34 | #formatApp > .header { 35 | text-align: center; 36 | border-bottom: 2px solid lightgray; 37 | } 38 | 39 | #formatApp > .body { 40 | text-align: center; 41 | border-bottom: 2px solid lightgray; 42 | padding: 10px 0; 43 | } 44 | 45 | #formatApp > .footer { 46 | display: flex; 47 | justify-content: space-around; 48 | text-align: center; 49 | padding: 10px 0; 50 | } 51 | 52 | #updateApp > .header { 53 | text-align: center; 54 | border-bottom: 2px solid lightgray; 55 | } 56 | 57 | #updateApp > .body { 58 | text-align: center; 59 | border-bottom: 2px solid lightgray; 60 | padding: 10px 0; 61 | } 62 | 63 | #updateApp > .body > .item { 64 | display: flex; 65 | justify-content: space-around; 66 | font-size: 1.4em; 67 | border-bottom: 2px solid rgb(236, 230, 230) 68 | } 69 | 70 | #updateApp > .body > .item:last-child { 71 | border: none !important; 72 | } 73 | 74 | #updateApp > .footer { 75 | display: flex; 76 | justify-content: space-around; 77 | text-align: center; 78 | padding: 10px 0; 79 | } 80 | 81 | .item-right { 82 | width: 15%; 83 | } 84 | 85 | #editToFloor { 86 | width: 100%; 87 | } 88 | 89 | .elevator-app > .app-header { 90 | display: flex; 91 | justify-content: space-between; 92 | padding: 0 15px; 93 | border-bottom: 5px outset rgb(255, 255, 255); 94 | } 95 | 96 | .elevator-app > .app-body { 97 | width: 98%; 98 | min-height: 425px; 99 | margin: 5px 1%; 100 | background-color: rgb(240, 240, 247); 101 | } 102 | 103 | .elevator-app > .app-body > .elevators { 104 | display: flex; 105 | align-items: center; 106 | justify-content: space-around; 107 | padding: 20px 10px; 108 | flex-wrap: wrap; 109 | } 110 | 111 | .elevators > .elevator { 112 | width: 23%; 113 | padding: 0.2% 1%; 114 | border: 1px solid rgb(76, 14, 95); 115 | border-radius: 10px; 116 | height: auto; 117 | background-color: white; 118 | } 119 | 120 | .elevators > .elevator > .elevator-header { 121 | cursor: pointer; 122 | border-bottom: 1px solid blue; 123 | text-align: center; 124 | font-size: 1.7em; 125 | color: rgb(126, 54, 140) 126 | } 127 | 128 | .elevators > .elevator > .elevator-body { 129 | width: 100%; 130 | padding: 3% 5%; 131 | 132 | } 133 | 134 | .elevators > .elevator > .elevator-footer { 135 | border-top: 1px solid blue; 136 | width: 100%; 137 | display: flex; 138 | justify-content: space-between; 139 | padding: 2% 0; 140 | } 141 | 142 | .elevator-body > .elevator-item { 143 | display: flex; 144 | justify-content: space-between; 145 | border-bottom: 1px solid black; 146 | margin: 2px 0 147 | } 148 | 149 | .elevator-body > .elevator-item:last-child { 150 | border: none 151 | } 152 | 153 | .elevator-body > .elevator-item > .elevator-text { 154 | font-size: 1.3em; 155 | } 156 | 157 | .elevator-body > .elevator-item > .item { 158 | font-size: 1.2em; 159 | } 160 | 161 | .elevator-body > .elevator-item > .item-circle { 162 | cursor: pointer; 163 | text-align: center; 164 | color: white; 165 | min-width: 27px; 166 | height: 26px; 167 | border-radius: 100%; 168 | } 169 | 170 | .item-red { 171 | background-color: rgb(232, 21, 21); 172 | } 173 | 174 | .item-red:hover { 175 | background-color: red 176 | } 177 | 178 | .item-blue { 179 | background-color: rgb(62, 68, 181); 180 | } 181 | 182 | .item-blue:hover { 183 | background-color: rgb(59, 59, 234); 184 | } 185 | 186 | .item-default { 187 | background-color: rgb(171, 161, 161); 188 | } 189 | 190 | .item-default:hover { 191 | background-color: gray; 192 | } 193 | 194 | .item-orange { 195 | background-color: rgb(252, 201, 36); 196 | } 197 | 198 | .item-orange:hover { 199 | background-color: rgb(255, 221, 0); 200 | } 201 | 202 | .item-success:hover { 203 | background-color: rgb(43, 135, 206); 204 | } 205 | 206 | .item-success { 207 | background-color: rgb(43, 185, 217); 208 | } 209 | 210 | .item-success:hover { 211 | background-color: rgb(45, 204, 239); 212 | } 213 | 214 | ::-webkit-scrollbar { 215 | width: 8px; 216 | height: 8px; 217 | background-color: rgb(134, 146, 142); 218 | } 219 | 220 | ::-webkit-scrollbar:hover { 221 | background-color: rgb(98, 107, 104); 222 | } -------------------------------------------------------------------------------- /Django/EMS/static/css/login.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding-bottom: 10px; 3 | background-color: #eee; 4 | } 5 | 6 | .form-signin { 7 | max-width: 330px; 8 | margin: 0 auto; 9 | padding: 30px 15px; 10 | } 11 | 12 | .form-signin .form-signin-heading, 13 | .form-signin .checkbox { 14 | margin-bottom: 10px; 15 | } 16 | 17 | .form-signin .checkbox { 18 | font-weight: normal; 19 | } 20 | 21 | .form-signin .form-control { 22 | position: relative; 23 | height: auto; 24 | -webkit-box-sizing: border-box; 25 | -moz-box-sizing: border-box; 26 | box-sizing: border-box; 27 | padding: 10px; 28 | font-size: 16px; 29 | } 30 | 31 | .form-signin .form-control:focus { 32 | z-index: 2; 33 | } 34 | 35 | -------------------------------------------------------------------------------- /Django/EMS/static/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/static/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /Django/EMS/static/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/static/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /Django/EMS/static/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/static/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /Django/EMS/static/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/static/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /Django/EMS/static/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Django/EMS/static/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /Django/EMS/templates/base.html: -------------------------------------------------------------------------------- 1 | {% load static %} 2 | 3 | 4 | 5 | 6 | 7 | 8 | {% block title %}Welcome{% endblock %} 9 | 10 | 11 | 12 | 13 | {% block head %} 14 | {% endblock %} 15 | 16 | 17 | {% include 'header.html' %} 18 | 19 | {% block main %} 20 | {% endblock %} 21 | 22 | 23 | 24 | {% block footer %} 25 | {% endblock %} 26 | 27 | -------------------------------------------------------------------------------- /Django/EMS/templates/elements/format.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |

Please format Elevator System

4 |
5 |
6 |
Elevator number:
7 |
8 | 12 |
-------------------------------------------------------------------------------- /Django/EMS/templates/elements/update_app.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |

4 |
5 |
6 | 7 |
8 |
Current floor:
9 |
10 |
11 |
12 |
To go:
13 |
14 | 15 |
16 |
17 |
18 |
Maintenance:
19 |
20 | 24 |
25 |
26 |
27 |
Operational:
28 |
29 | 33 |
34 |
35 |
36 | 40 |
-------------------------------------------------------------------------------- /Django/EMS/templates/elevators.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load static %} 3 | 4 | {% block title %}Elevator{% endblock %} 5 | 6 | {% block head %} 7 | 8 | {% endblock %} 9 | 10 | {% block main %} 11 | {% include 'elements/format.html' %} 12 | {% include 'elements/update_app.html' %} 13 | 14 |
15 |
16 |

Welcome to our Elevator System

17 | 18 |

19 |
20 |
21 | {# elevators go here #} 22 |
23 |
24 |
25 | {% endblock %} 26 | 27 | {% block footer %} 28 | 29 | {% endblock %} -------------------------------------------------------------------------------- /Django/EMS/templates/header.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Django/EMS/templates/registration/login.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load static %} 3 | 4 | {% block title %}Log In{% endblock %} 5 | 6 | {% block head %} 7 | 8 | {% endblock %} 9 | 10 | {% block main %} 11 |
12 |
13 | {% csrf_token %} 14 | 15 |
16 | {% if form.errors %} 17 |
18 |

Error!

19 | Please enter a correct username and password. Fields 20 | are case-sensitive. 21 |
22 | {% endif %} 23 | 24 | 25 | 29 | 30 | 32 |
33 | 36 |
37 |
38 | {% endblock %} 39 | -------------------------------------------------------------------------------- /Django/README.md: -------------------------------------------------------------------------------- 1 |

Django projects

2 |

Contents

3 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # CakePHP 3 2 | 3 | /vendor/* 4 | /config/app.php 5 | 6 | /tmp/cache/models/* 7 | !/tmp/cache/models/empty 8 | /tmp/cache/persistent/* 9 | !/tmp/cache/persistent/empty 10 | /tmp/cache/views/* 11 | !/tmp/cache/views/empty 12 | /tmp/sessions/* 13 | !/tmp/sessions/empty 14 | /tmp/tests/* 15 | !/tmp/tests/empty 16 | 17 | /logs/* 18 | !/logs/empty 19 | 20 | # CakePHP 2 21 | 22 | /app/tmp/* 23 | /app/Config/core.php 24 | /app/Config/database.php 25 | /vendors/* 26 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/blog.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 |
19 |
20 | 21 | 22 | 23 |
24 |
25 | 26 | 29 | 30 | 49 | 50 | 51 | 52 | 53 | 54 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 90 | 91 | 92 | 93 |
55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 |
Archive
January 2017
March 2017
November 2017
Febrary 2018
April 2018
May 2018
July 2018
67 |
79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 |
123456
89 |
94 |
95 | 96 | 173 | 174 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/buy.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 |
7 |
8 |
-------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/css/buySellSider.css: -------------------------------------------------------------------------------- 1 | .buySellSiderContainer { 2 | width:100%; 3 | height:300px; 4 | background:#1a5267; 5 | position:fixed; 6 | } 7 | 8 | .buySellChainBack { 9 | width:100%; 10 | height:300px; 11 | background:url("../images/smallChain.png"); 12 | background-repeat : repeat-x; 13 | opacity:0.2; 14 | } -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/css/footer.css: -------------------------------------------------------------------------------- 1 | .footer { 2 | width:100%; 3 | position:relative; 4 | padding:0px; 5 | z-index: 99; 6 | } 7 | 8 | .upFooter { 9 | width:100%; 10 | background:#363839; 11 | border-top:1px solid #afafaf; 12 | color:#afafaf; 13 | } 14 | 15 | .trollBox { 16 | margin:auto; 17 | width:76%; 18 | background:#5192cc; 19 | color:white; 20 | font-weight:bold; 21 | font-size:16px; 22 | cursor:pointer; 23 | padding-top:10px; 24 | } 25 | 26 | .downFooter { 27 | color:white; 28 | background:#282a2b; 29 | border-top:1px solid #4b4c4d; 30 | font-size:14px; 31 | height:28px; 32 | } 33 | 34 | .downloadButtons { 35 | width:100px; 36 | height:30px; 37 | cursor:pointer; 38 | } 39 | 40 | .footerAddSocialButton { 41 | width:30px; 42 | height:30px; 43 | cursor:pointer; 44 | } 45 | 46 | .footerCenterUpButton { 47 | width:40px; 48 | height:40px; 49 | cursor:pointer; 50 | } 51 | 52 | .footerCenterUpButton:hover { 53 | opacity: 0.8; 54 | } 55 | 56 | .emailLined { 57 | color:#afafaf; 58 | text-decoration: unset; 59 | cursor:pointer; 60 | } 61 | 62 | .emailLined:hover { 63 | color:#5192cc; 64 | } 65 | 66 | .emailLined2 { 67 | color:#afafaf; 68 | text-decoration: unset; 69 | font-weight:bold; 70 | } 71 | 72 | .emailLink { 73 | cursor:pointer; 74 | } 75 | 76 | .emailLink:hover { 77 | color:#5192cc; 78 | text-decoration: underline; 79 | } 80 | 81 | .footerContactTitle { 82 | font-size:26px; 83 | padding-bottom:15px; 84 | color:#afafaf; 85 | } 86 | 87 | .footerContactContent { 88 | font-size:16px; 89 | color:#afafaf; 90 | padding-top:5px; 91 | padding-bottom:5px; 92 | } 93 | 94 | .footerButton01 { 95 | background:#4367b2; 96 | border-radius:3px; 97 | cursor:pointer; 98 | } 99 | 100 | .footerButton01:hover { 101 | background: #3357a2; 102 | } -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/css/header.css: -------------------------------------------------------------------------------- 1 | .header { 2 | width:100%; 3 | min-width:1360px; 4 | z-index: 100; 5 | margin-top:0px; 6 | position:fixed; 7 | } 8 | 9 | .logo { 10 | float:left; 11 | padding-left:5px; 12 | padding-right:5px; 13 | padding-top:2px; 14 | } 15 | 16 | .select { 17 | float:left; 18 | margin-top:2px; 19 | } 20 | 21 | .selMainItem { 22 | width:30px; 23 | height:30px; 24 | cursor:pointer; 25 | margin-left:5px; 26 | margin-right:5px; 27 | } 28 | 29 | .pricePad { 30 | float:left; 31 | height:118px; 32 | } 33 | 34 | .priceLeft { 35 | width:16px; 36 | background:url("../images/viewRateLeft.png"); 37 | } 38 | 39 | .priceMiddle { 40 | width:130px; 41 | background:url("../images/viewRateMiddle.png"); 42 | cursor:pointer; 43 | } 44 | 45 | .firstNumberPrice { 46 | margin-left:0; 47 | } 48 | 49 | .priceRight { 50 | width:17px; 51 | background:url("../images/viewRateRight.png"); 52 | } 53 | 54 | .menu { 55 | float:left; 56 | padding-right:10px; 57 | } 58 | 59 | .UpMenuItem { 60 | font-weight:bold; 61 | cursor:pointer; 62 | color: #7fc4e4; 63 | padding-left:7px; 64 | padding-right:7px; 65 | width:100px; 66 | font-size:16px; 67 | } 68 | 69 | .DownMenuItem { 70 | font-weight:bold; 71 | cursor:pointer; 72 | font-size:16px; 73 | color:black; 74 | padding-left:30px; 75 | } 76 | 77 | .DownMenuItem:hover { 78 | color:#7fc4e4; 79 | } 80 | 81 | .animated-button, .animated-button:visited { 82 | position: relative; 83 | display: block; 84 | text-align: center; 85 | text-decoration: none; 86 | text-transform: uppercase; 87 | overflow: hidden; 88 | letter-spacing: .08em; 89 | border-radius: 0; 90 | -webkit-transition: all 1s ease; 91 | -moz-transition: all 1s ease; 92 | -o-transition: all 1s ease; 93 | transition: all 1s ease; 94 | } 95 | .animated-button:after, .animated-button:visited:after { 96 | content: ""; 97 | position: absolute; 98 | height: 0%; 99 | left: 50%; 100 | top: 50%; 101 | width: 150%; 102 | z-index: -1; 103 | -webkit-transition: 1s ease 0s; 104 | -moz-transition: all 1s ease 0s; 105 | -o-transition: all 1s ease 0s; 106 | transition: all 1s ease 0s; 107 | } 108 | .animated-button:hover, .animated-button:visited:hover { 109 | color:white; 110 | } 111 | .animated-button:hover:after, .animated-button:visited:hover:after { 112 | height: 450%; 113 | } 114 | .animated-button, .animated-button:visited { 115 | position: relative; 116 | display: block; 117 | padding: 5px 10px; 118 | padding-top:8px; 119 | font-size:16px; 120 | color:#7fc4e4; 121 | border-radius: 0; 122 | text-align: center; 123 | text-decoration: none; 124 | text-transform: uppercase; 125 | overflow: hidden; 126 | -webkit-transition: all 1s ease; 127 | -moz-transition: all 1s ease; 128 | -o-transition: all 1s ease; 129 | transition: all 1s ease; 130 | } 131 | .animated-button.victoria-two:after { 132 | background: #5192cc; 133 | -moz-transform: translateX(-50%) translateY(-50%) rotate(25deg); 134 | -ms-transform: translateX(-50%) translateY(-50%) rotate(25deg); 135 | -webkit-transform: translateX(-50%) translateY(-50%) rotate(25deg); 136 | transform: translateX(-50%) translateY(-50%) rotate(25deg); 137 | } 138 | 139 | .animated-button:hover { 140 | box-shadow:-1px 1px 1px #0e2f3c; 141 | } 142 | 143 | .priceTitle { 144 | text-align:center; 145 | width:100%; 146 | font-size: 22px; 147 | font-weight: bold; 148 | color:#596cda; 149 | margin-top:15px; 150 | /*text-shadow:5px 5px 10px #596cda, -5px 5px 10px #596cda, 5px -5px 10px #596cda, -5px -5px 10px #596cda, 1px 1px 0px white;*/ 151 | } 152 | 153 | .priceBoard { 154 | text-align:center; 155 | width:100%; 156 | margin:auto; 157 | font-size: 44px; 158 | font-family: sans-serif; 159 | font-weight: bold; 160 | color:#e61f26; 161 | cursor:pointer; 162 | } 163 | 164 | .currentFrame { 165 | width:60px; 166 | height:60px; 167 | } 168 | 169 | .subWndBtn01 { 170 | background: #355b74; 171 | text-align: center; 172 | color:white; 173 | font-size: 15px; 174 | border-radius: 5px; 175 | padding-top:8px; 176 | padding-bottom:10px; 177 | cursor: pointer; 178 | } 179 | 180 | .subWndBtn01:hover { 181 | background: #58793e; 182 | } 183 | 184 | .subWndBtn02 { 185 | background:#cad5dc; 186 | text-align: center; 187 | color:white; 188 | font-size: 15px; 189 | height: 27px; 190 | border-radius: 5px; 191 | margin-right:8px; 192 | padding-top:8px; 193 | cursor: pointer; 194 | } 195 | 196 | .subWnd { 197 | z-index: 92; 198 | position: fixed; 199 | border-radius: 8px; 200 | border:1px solid #cfcfcf; 201 | background:#fafafa; 202 | box-shadow: 0 5px 10px rgba(0, 0, 0, 0.5); 203 | margin-top:180px; 204 | } -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/css/main.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: Arial; 3 | font-size:16px; 4 | margin:0px; 5 | padding:0px; 6 | } 7 | 8 | .alignCenterDiv { 9 | margin:auto; 10 | } 11 | 12 | .selDropDownBox { 13 | display:none; 14 | position: fixed; 15 | z-index: 102; 16 | left: 0; 17 | top: 0; 18 | padding-top:10px; 19 | padding-bottom:10px; 20 | border:1px solid #cecece; 21 | border-radius: 10px; 22 | box-shadow: 0 0 10px #aeaeae; 23 | background:white; 24 | } 25 | 26 | .selDropByBox { 27 | display:none; 28 | position: fixed; 29 | z-index: 102; 30 | left: 0; 31 | top: 0; 32 | } 33 | 34 | .recommendDropbox { 35 | padding-left:10px; 36 | padding-right:10px; 37 | } 38 | 39 | .selItemIcon { 40 | width:20px; 41 | height:20px; 42 | float:left; 43 | margin-left:10px; 44 | } 45 | 46 | .selItem { 47 | padding-top:3px; 48 | padding-bottom:2px; 49 | } 50 | 51 | .selItem:hover { 52 | cursor:pointer; 53 | background:#dfdfdf; 54 | } 55 | 56 | .eachMainSelect { 57 | width:30px; 58 | height:30px; 59 | margin-left:5px; 60 | margin-right:5px; 61 | cursor:pointer; 62 | } 63 | 64 | .selItemText { 65 | font-size:16px; 66 | padding-top:2px; 67 | margin-left:40px; 68 | margin-right:10px; 69 | } 70 | 71 | .corverDiv { 72 | display: none; 73 | position: fixed; 74 | z-index: 1000; 75 | left: 0; 76 | top: 0; 77 | width: 100%; 78 | height: 100%; 79 | overflow: auto; 80 | background-color: rgb(0,0,0); 81 | background-color: rgba(0,0,0,0.1); 82 | cursor:wait; 83 | } 84 | 85 | .popUpDiv { 86 | display: none; 87 | position: fixed; 88 | z-index: 1000; 89 | left: 0; 90 | top: 0; 91 | width: 100%; 92 | height: 100%; 93 | overflow: auto; 94 | background-color: rgb(0,0,0); 95 | background-color: rgba(0,0,0,0.3); 96 | } 97 | 98 | .popUpkWindow { 99 | width:470px; 100 | min-height:150px; 101 | background:#cadee8; 102 | /*background: #efefef;*/ 103 | border-radius: 10px; 104 | font-size:20px; 105 | color:#464646; 106 | box-shadow: 0px 0px 50px rgba(0,0,0,0.8); 107 | } 108 | 109 | .closeButton01 { 110 | margin-right:20px; 111 | width:30px; 112 | height:30px; 113 | margin-top:15px; 114 | cursor:pointer; 115 | background: url("../images/closeButton.png"); 116 | } 117 | 118 | .closeButton01:hover { 119 | background: url("../images/closeButton_hover.png"); 120 | } 121 | 122 | .fusionTooltip { 123 | position:fixed; 124 | z-index: 999; 125 | font-size:14px; 126 | opacity:0.7; 127 | display: none; 128 | } 129 | 130 | .fusionToolTipText { 131 | padding-left:8px; 132 | padding-right:8px; 133 | padding-top:5px; 134 | padding-bottom:5px; 135 | background:#111; 136 | border-radius:4px; 137 | font-size:12px; 138 | color:#dfdfdf; 139 | } 140 | 141 | .fusionTopTriangle { 142 | width:20px; 143 | height:20px; 144 | } 145 | 146 | .fusionTopTriangle { 147 | width: 0; 148 | height: 0; 149 | border-left: 7px solid transparent; 150 | border-right: 7px solid transparent; 151 | border-bottom: 7px solid #111; 152 | } 153 | 154 | .digitalNumber { 155 | width:35px; 156 | height:60px; 157 | float:left; 158 | } 159 | 160 | .digitalNumber01 { 161 | width:15px; 162 | height:61px; 163 | float:left; 164 | } 165 | 166 | .digitalPointer { 167 | width:12px; 168 | height:60px; 169 | float:left; 170 | } 171 | 172 | input { 173 | font-size:16px; 174 | padding-left:8px; 175 | padding-top:3px; 176 | padding-bottom:2px; 177 | border-radius: 3px; 178 | border:1px solid #afafaf; 179 | } 180 | 181 | input:focus { 182 | border:1px solid #7fc4e4; 183 | box-shadow:0px 0px 5px #7fc4e4; 184 | } 185 | 186 | select { 187 | font-size:16px; 188 | padding-left:8px; 189 | padding-top:2px; 190 | padding-bottom:2px; 191 | border-radius: 5px; 192 | border:1px solid #afafaf; 193 | cursor:pointer; 194 | } 195 | 196 | select:focus { 197 | border:1px solid #7fc4e4; 198 | box-shadow:0px 0px 5px #7fc4e4; 199 | } 200 | 201 | textarea { 202 | padding-top:5px; 203 | padding-left:10px; 204 | padding-right:10px; 205 | font-size:16px; 206 | } 207 | 208 | textarea:focus { 209 | border:1px solid #7fc4e4; 210 | box-shadow:0px 0px 5px #7fc4e4; 211 | } 212 | 213 | .linkString { 214 | font-size:18px; 215 | cursor:pointer; 216 | color:#0077a8; 217 | } 218 | 219 | .linkString:hover { 220 | color:#6c7bea; 221 | } 222 | 223 | .mainTabContainer { 224 | width:100%; 225 | height:200px; 226 | } 227 | 228 | .mainTab01_sel .tab01_phone { 229 | width:36px; 230 | height:54px; 231 | } 232 | 233 | .mainTab01 { 234 | text-align: center; 235 | cursor:pointer; 236 | float:left; 237 | } 238 | 239 | td { 240 | padding:0px; 241 | margin:0px; 242 | } 243 | 244 | .mainTab01_sel { 245 | width:216px; 246 | height:144px; 247 | background:#7fc4e4; 248 | /*border-radius: 25px;*/ 249 | text-align:center; 250 | color:white; 251 | float:left; 252 | box-shadow: 0px 0px 10px rgba(0,0,0,0.5); 253 | } 254 | 255 | .mainTab01_sel .mainTab01_notSel_text { 256 | font-size: 22px; 257 | } 258 | 259 | .mainTab01_notSel { 260 | margin-top:12px; 261 | width:180px; 262 | height:120px; 263 | /*background:#dfdfdf;*/ 264 | /*border-radius: 20px;*/ 265 | border:1px solid #afafaf; 266 | text-align:center; 267 | cursor:pointer; 268 | background: white; 269 | float:left; 270 | } 271 | 272 | .mainTab01_notSel:hover { 273 | border:1px solid #7fc4e4; 274 | 275 | /*filter:blur(0);*/ 276 | /*-webkit-transition: all 0.1s ease-in;*/ 277 | -webkit-transform: scale(1.2); 278 | /*-ms-transition: all 0.1s ease-in;*/ 279 | -ms-transform: scale(1.2); 280 | /*-moz-transition: all 0.1s ease-in;*/ 281 | -moz-transform: scale(1.2); 282 | /*transition: all 0.1s ease-in;*/ 283 | transform: scale(1.2); 284 | } 285 | 286 | .mainTab01_notSel:hover .mainTab01_notSel_text { 287 | 288 | } 289 | 290 | .mainTab01_notSel_text { 291 | margin-top:5px; 292 | font-size:18px; 293 | } 294 | 295 | .tab01_phone { 296 | width:30px; 297 | height:45px; 298 | } 299 | 300 | .tab01_mail { 301 | width:30px; 302 | height:25px; 303 | } 304 | 305 | .mainTab01_sel .tab01_mail { 306 | width:36px; 307 | height:30px; 308 | } 309 | 310 | .tab01_contact { 311 | width:25px; 312 | height:25px; 313 | } 314 | 315 | .mainTab01_sel .tab01_contact { 316 | width:30px; 317 | height:30px; 318 | } 319 | 320 | .tab01_live { 321 | width:30px; 322 | height:30px; 323 | } 324 | 325 | .mainTab01_sel .tab01_live { 326 | width:36px; 327 | height:36px; 328 | } 329 | 330 | .tabLine01 { 331 | height:49%; 332 | border-bottom:2px solid #afafaf; 333 | float:left; 334 | } 335 | 336 | .subDivmainText01 { 337 | font-size:42px; 338 | color:#333333; 339 | } 340 | 341 | .button01 { 342 | padding-top: 10px; 343 | padding-bottom: 10px; 344 | padding-left:5px; 345 | padding-right:5px; 346 | border-radius: 5px; 347 | text-align: center; 348 | color:#7fc4e4; 349 | font-weight: bold; 350 | cursor: pointer; 351 | } 352 | 353 | .mainTab02_notSel { 354 | width:250px; 355 | background:#dfdfdf; 356 | border-top-right-radius: 10px; 357 | border-top-left-radius: 10px; 358 | float:left; 359 | margin-left:30px; 360 | margin-right:30px; 361 | text-align:center; 362 | font-size:24px; 363 | padding-top:8px; 364 | padding-bottom:5px; 365 | cursor:pointer; 366 | color:#333333; 367 | } 368 | 369 | .mainTab02_notSel:hover { 370 | border-top:3px solid #db5f5f; 371 | } 372 | 373 | .mainTab03_notsel { 374 | width:100%; 375 | height:60px; 376 | border-bottom-left-radius:25px; 377 | border-bottom-right-radius:25px; 378 | cursor:pointer; 379 | } 380 | 381 | .animated-button-client, .animated-button-client:visited { 382 | border: 2px solid #5192cc; 383 | position: relative; 384 | display: block; 385 | text-align: center; 386 | -webkit-transition: all 1s ease; 387 | -moz-transition: all 1s ease; 388 | -o-transition: all 1s ease; 389 | transition: all 1s ease; 390 | cursor:pointer; 391 | margin-bottom:30px; 392 | } 393 | .animated-button-client:after, .animated-button-client:visited:after { 394 | content: ""; 395 | position: absolute; 396 | height: 0%; 397 | left: 50%; 398 | top: 50%; 399 | width: 100%; 400 | z-index: -1; 401 | -webkit-transition: all 0.75s ease 0s; 402 | -moz-transition: all 0.75s ease 0s; 403 | -o-transition: all 0.75s ease 0s; 404 | transition: all 0.75s ease 0s; 405 | } 406 | .animated-button-client:hover, .animated-button-client:visited:hover { 407 | color: white; 408 | } 409 | 410 | .animated-button-client, .animated-button-client:visited { 411 | position: relative; 412 | display: block; 413 | color: black; 414 | padding-top:5px; 415 | padding-bottom:5px; 416 | padding-right: 5px; 417 | padding-left:5px; 418 | font-size:20px; 419 | color:#5192cc; 420 | text-align: center; 421 | overflow: hidden; 422 | -webkit-transition: all 1s ease; 423 | -moz-transition: all 1s ease; 424 | -o-transition: all 1s ease; 425 | transition: all 1s ease; 426 | } 427 | 428 | .animated-button-client.victoria-four:after { 429 | background: #5192cc; 430 | -moz-transform: translateY(-50%) translateX(-50%) rotate(90deg); 431 | -ms-transform: translateY(-50%) translateX(-50%) rotate(90deg); 432 | -webkit-transform: translateY(-50%) translateX(-50%) rotate(90deg); 433 | transform: translateY(-50%) translateX(-50%) rotate(90deg); 434 | } 435 | .animated-button-client.victoria-four:hover:after { 436 | opacity: 1; 437 | height: 600% !important; 438 | } -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Augur03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Augur03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/00.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/00.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/02.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/04.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/05.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/06.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/07.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/08.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/09.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Characters/0P.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Characters/0P.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Reddit-recommend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Reddit-recommend.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Reddit-recommend_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Reddit-recommend_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/Untitled-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/Untitled-2.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/appMobile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/appMobile.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/bankTransfer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/bankTransfer.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/DASH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/DASH.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/DASH_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/DASH_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/DASH_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/DASH_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ETC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ETC.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ETC_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ETC_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ETC_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ETC_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ETH.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ETH.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ETH_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ETH_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ETH_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ETH_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/GNO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/GNO.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/GNO_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/GNO_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/LTC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/LTC.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/LTC_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/LTC_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/LTC_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/LTC_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/REP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/REP.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/REP_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/REP_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XBT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XBT.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XBT_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XBT_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XBT_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XBT_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XLM.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XLM.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XLM_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XLM_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XMR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XMR.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XMR_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XMR_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XMR_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XMR_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XRP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XRP.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XRP_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XRP_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/XRP_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/XRP_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ZEC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ZEC.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ZEC_C.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ZEC_C.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain/ZEC_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain/ZEC_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChain03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChain03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blockChainSliderFrame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blockChainSliderFrame.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/blogSymbol.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/blogSymbol.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/buySelIcon01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/buySelIcon01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/calendar01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/calendar01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/camera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/camera.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/cash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/cash.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/cash03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/cash03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/chain-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/chain-01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/chain-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/chain-02.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/chain-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/chain-03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/chain-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/chain-04.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/chain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/chain.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/chainWorldmap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/chainWorldmap.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/chain_origin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/chain_origin.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/cheap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/cheap.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/circleGet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/circleGet.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/circleOrder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/circleOrder.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/circlePay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/circlePay.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/closeButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/closeButton.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/closeButton_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/closeButton_hover.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/creditCard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/creditCard.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/CAD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/CAD.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/CAD_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/CAD_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/EUR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/EUR.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/EUR_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/EUR_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/GBP.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/GBP.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/GBP_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/GBP_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/JPY.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/JPY.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/JPY_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/JPY_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/USD.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/USD.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currency/USD_W.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currency/USD_W.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/currentFrame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/currentFrame.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/down.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/downloadAppStoreIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/downloadAppStoreIcon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/easy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/easy.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/facbookIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/facbookIcon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/faceIcon01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/faceIcon01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/facebook-recommend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/facebook-recommend.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/facebook-recommend_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/facebook-recommend_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/facebook_add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/facebook_add.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/faqCharacter01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/faqCharacter01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/fast.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/fast.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-ae.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-ae.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-cn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-cn.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-de.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-es.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-es.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-fr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-fr.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-id.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-id.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-in.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-in.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-it.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-it.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-jp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-jp.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-pl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-pl.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-pt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-pt.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-ru.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/flags/flag-uk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/flags/flag-uk.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/giroPay03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/giroPay03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/glass_tab-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/glass_tab-white.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/glass_tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/glass_tab.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/gnsis03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/gnsis03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/google-recommend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/google-recommend.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/google-recommend_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/google-recommend_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/googlePlayButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/googlePlayButton.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/gov.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/gov.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/gov_sel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/gov_sel.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/hand01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/hand01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/hand02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/hand02.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/human.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/human.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/human_photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/human_photo.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/icon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/images.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/images.jpg -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/inIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/inIcon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/infoIcon01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/infoIcon01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/international.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/international.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/laPost03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/laPost03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/like01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/like01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/likeButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/likeButton.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/likeIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/likeIcon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/line3Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/line3Icon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/linkedin-recommend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/linkedin-recommend.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/linkedin-recommend_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/linkedin-recommend_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/live-tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/live-tab.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/live-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/live-white.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/logo.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/loveCrypto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/loveCrypto.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/mail-tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/mail-tab.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/mail-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/mail-white.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/mailBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/mailBox.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/menuBack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/menuBack.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/msg main icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/msg main icon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/neosurf03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/neosurf03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/neteuer03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/neteuer03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/okPay03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/okPay03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/onlineHelp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/onlineHelp.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/paypal03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/paypal03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/paysafecard03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/paysafecard03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/pen-tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/pen-tab.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/pen-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/pen-white.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/perfectMoney03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/perfectMoney03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/phone-tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/phone-tab.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/phone-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/phone-white.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/phone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/phone.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/plane.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/plane.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/privacy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/privacy.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/privacy_sel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/privacy_sel.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/readIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/readIcon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/readIcon_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/readIcon_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/recommendIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/recommendIcon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/redirect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/redirect.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/redirect_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/redirect_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/regulate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/regulate.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/reply.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/reply.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/ring main icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/ring main icon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/safe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/safe.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/scale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/scale.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/scale_sel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/scale_sel.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/sepa03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/sepa03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/separaterShadow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/separaterShadow.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/serviceSymbol01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/serviceSymbol01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/shareButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/shareButton.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/skrill03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/skrill03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/skype main icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/skype main icon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-giroPay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-giroPay.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-giroPay_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-giroPay_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-laPoste.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-laPoste.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-laPoste_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-laPoste_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-neosurf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-neosurf.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-neosurf_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-neosurf_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-neteuer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-neteuer.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-neteuer_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-neteuer_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-okPay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-okPay.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-okPay_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-okPay_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-paySafe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-paySafe.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-paySafe_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-paySafe_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-paypal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-paypal.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-paypal_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-paypal_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-perfectMoney.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-perfectMoney.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-perfectMoney_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-perfectMoney_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-sepa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-sepa.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-sepa_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-sepa_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-skrill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-skrill.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-skrill_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-skrill_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-sofort.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-sofort.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-sofort_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-sofort_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-visa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-visa.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-visa_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-visa_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-webMoney.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-webMoney.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-webMoney_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-webMoney_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-westernUnion.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-westernUnion.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-westernUnion_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-westernUnion_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-wireTransfer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-wireTransfer.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/slide-wireTransfer_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/slide-wireTransfer_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/smallChain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/smallChain.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/smartImage.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/smartImage.jpg -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/smile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/smile.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/sofort03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/sofort03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/spin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/spin.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/stellarLumens03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/stellarLumens03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/tChat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/tChat.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/tab-chain-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/tab-chain-white.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/tab-chain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/tab-chain.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/telegram_add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/telegram_add.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/twitter main icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/twitter main icon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/twitter-recommend.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/twitter-recommend.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/twitter-recommend_cur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/twitter-recommend_cur.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/twitter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/twitter.jpg -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/twitterIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/twitterIcon.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/upCharacter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/upCharacter.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/viewRateLeft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/viewRateLeft.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/viewRateMiddle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/viewRateMiddle.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/viewRateRight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/viewRateRight.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/visa03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/visa03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/webMoney03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/webMoney03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/westernUnion03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/westernUnion03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/wireTransfer03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/wireTransfer03.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/worldmap-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/worldmap-01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/images/worldmap01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/images/worldmap01.png -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/inc/contentsFAQ.php: -------------------------------------------------------------------------------- 1 | "Who we are ?", 4 | "010102" => "How do we know if we are trusted ?", 5 | "010103" => "Why come to our house ?", 6 | "010104" => "How to contact us ?", 7 | "010105" => "What are the different means of payment ?", 8 | "010106" => "What are the fees ?", 9 | "010107" => "What are the deadlines ?", 10 | "010108" => "What are the limits ?", 11 | "010109" => "Why and how to verify identity ?", 12 | ); 13 | ?> 14 | 15 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/inc/footer.php: -------------------------------------------------------------------------------- 1 | 2 | 110 | 111 | 133 | 134 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/inc/quickLogin.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |
abcdesadfasdfasdfasdf
-------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/inc/quickSignup.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/PHP/CryptoFirst/Frontend/inc/quickSignup.php -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/js/ajax.js: -------------------------------------------------------------------------------- 1 | function httpRequest( target_url, functionReference) { 2 | 3 | try { 4 | if( window.XMLHttpRequest ) { 5 | httpObj = new XMLHttpRequest(); 6 | } else if( window.ActiveXObject) { 7 | httpObj = new ActiveXObject( "Microsoft.XMLHTTP" ); 8 | } else { 9 | httpObj = false; 10 | } 11 | } catch( e ) { 12 | httpObj = false; 13 | } 14 | if( !httpObj ) { 15 | httpObjGenerateFail(); 16 | } 17 | 18 | httpObj.open( "GET", target_url, true ); 19 | 20 | httpObj.onreadystatechange = function() { 21 | if ( httpObj.readyState == 4 ) { 22 | if ( httpObj.status == 200 ) { 23 | functionReference( httpObj.responseText ); 24 | } else { 25 | alert( httpObj.status + ':' + httpObj.statusText ); 26 | return false; 27 | } 28 | } 29 | } 30 | 31 | httpObj.send(null); 32 | } 33 | 34 | function newXMLHTTP() { 35 | if(window.XMLHttpRequest) { 36 | try { 37 | xmlhttp = new XMLHttpRequest(); 38 | } catch(e) { 39 | alert("Can't initialize XMLHTTP."); 40 | return false; 41 | } 42 | } else if(window.ActiveXObject) { 43 | try { 44 | xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 45 | } catch(e) { 46 | try { 47 | xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 48 | } catch(e) { 49 | alert("Can't initialize XMLHTTP."); 50 | return false; 51 | } 52 | } 53 | } else { 54 | alert("Can't initialize XMLHTTP."); 55 | return false; 56 | 57 | } 58 | return xmlhttp; 59 | } 60 | 61 | function postForm(obj, callback) { 62 | var xmlhttp = newXMLHTTP(); 63 | if(!xmlhttp) return false; 64 | 65 | var child = obj.elements; 66 | var data = new Array(); 67 | for(i = 0; i < child.length;i++) { 68 | if(child[i].tagName != "INPUT" && child[i].tagName != "TEXTAREA" && child[i].tagName != "SELECT") continue; 69 | 70 | if(child[i].type == "submit" || child[i].type == "button" || child[i].type == "reset") continue; 71 | 72 | if((child[i].type == "radio" || child[i].type == "checkbox") && !child[i].checked) continue; 73 | 74 | if(child[i].getAttributeNode("required") && !child[i].value) { 75 | child[i].style.backgroundColor = "#FF9"; 76 | child[i].focus(); 77 | alert("error occur."); 78 | return false; 79 | } 80 | 81 | data.push ( child[i].name+"="+child[i].value); 82 | 83 | } 84 | 85 | senddata = data.join("&"); 86 | 87 | xmlhttp.open("POST", obj.action,true); 88 | xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 89 | xmlhttp.send(senddata); 90 | 91 | xmlhttp.onreadystatechange = function() { 92 | if(xmlhttp.readyState == 4) { 93 | if(xmlhttp.status == 200) { 94 | callback(xmlhttp.responseText); 95 | } else if (xmlhttp.status == 404){ 96 | alert("Several files of this program was damaged. Please reinstall the CCF."); 97 | } 98 | } 99 | } 100 | } -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/lang/en.php: -------------------------------------------------------------------------------- 1 | "English", 4 | "fr" => "French", 5 | "es" => "Spanish", 6 | "de" => "German", 7 | "it" => "Italian", 8 | "pt" => "Portuguese", 9 | "pl" => "Polish", 10 | "ru" => "Russian", 11 | "jp" => "Japanese", 12 | "cn" => "Chinese", 13 | "id" => "Indonesian", 14 | "in" => "Indian", 15 | "ae" => "Arabian", 16 | "CAD" => "Canadian dollar", 17 | "EUR" => "Euro", 18 | "USD" => "US Dollar", 19 | "JPY" => "Japanese Yen", 20 | "GBP" => "British Pound", 21 | "XBT" => "Bitcoin", 22 | "ETH" => "Ethereum", 23 | "ETC" => "Ethereum classic", 24 | "XMR" => "Monero", 25 | "DASH" => "Dash", 26 | "LTC" => "Litecoin", 27 | "ZEC" => "Zcash", 28 | "XRP" => "Ripple", 29 | "logIn" => "LOG IN", 30 | "signUp" => "SIGN UP", 31 | "buy" => "BUY", 32 | "sell" => "SELL", 33 | "faq" => "FAQ", 34 | "blog" => "BLOG", 35 | "aboutUs" => "ABOUT US", 36 | "contact" => "CONTACT", 37 | "contact2" => "Contact", 38 | "email" => "EMAIL", 39 | "mail" => "MAIL", 40 | "contactFrom" => "CONTACT FROM", 41 | "liveSupport" => "LIVE SUPPORT", 42 | "userName" => "USERNAME", 43 | "firstName" => "FIRST NAME", 44 | "middleName" => "MIDDLE NAME", 45 | "lastName" => "LAST NAME", 46 | "password" => "PASSWORD", 47 | "conPass" => "CONFIRM PASSWORD", 48 | "register" => "Register", 49 | "easy" => "Easy", 50 | "fast" => "Fast", 51 | "safe" => "Safe", 52 | "cheap" => "Cheap", 53 | "bankTransfer" => "Bank transfer", 54 | "cash" => "Cash", 55 | "creditCard" => "Credit card", 56 | "regulate" => "Regulate", 57 | "international" => "International", 58 | "appMobile" => "Mobile app", 59 | "tChat" => "Tchat", 60 | "onlineHelp" => "Online help", 61 | "order" => "Order", 62 | "pay" => "Pay", 63 | "get" => "Get", 64 | "steps" => "Steps", 65 | "langs" => "Languages", 66 | "countries" => "Countries", 67 | "PayWays" => "Payment ways", 68 | "cryptoCurs" => "Crypto-currencies", 69 | "currencies" => "Currencies", 70 | "happyCustoms" => "Happy customers", 71 | "address" => "Address", 72 | "mobile" => "Mobile", 73 | "REP" => "Augur", 74 | "XLM" => "Stellar lumens", 75 | "GNO" => "Gnosis", 76 | "phone" => "Telegram / Skype", 77 | "phone02" => "PHONE", 78 | "blockChainPrice" => "Blockchain price", 79 | "buySell" => "Buy / Sell", 80 | "generalInfo" => "General informations", 81 | "afterSalesService" => "After sales service", 82 | "service" => "Service", 83 | "name" => "Name", 84 | "sav" => "SAV", 85 | "emailAddr" => "Email address", 86 | "subject" => "Subject", 87 | "message" => "Message", 88 | "submit" => "Submit", 89 | "telegram" => "TELEGRAM", 90 | "ring" => "RING", 91 | "signal" => "SIGNAL", 92 | "skype" => "SKYPE", 93 | "howWork" => "How we work", 94 | "Cryptocurrencies" => "Cryptocurrencies", 95 | "presentation" => "Presentation", 96 | "buyCash" => "Buy cash", 97 | "buyOnline" => "Buy online", 98 | "sellingCash" => "Sell cash", 99 | "sellingOnline" => "Sell online", 100 | "partnership" => "Partnership", 101 | "inGeneral" => "In general", 102 | "inGeneral" => "In general", 103 | "search" => "Search", 104 | "doYouHaveQuestions" => "Do you have any questions?", 105 | "first" => "1st exchanger", 106 | "and" => " and ", 107 | "through" => " through ", 108 | "like" => "Like", 109 | "share" => "Share", 110 | "termsSales" => "Terms of service", 111 | "privacyPlicy" => "Privacy policy", 112 | "feedbacks" => "Testimonials", 113 | "toList" => "List", 114 | "safety" => "Safeness", 115 | "confidentiality" => "Confidentiality", 116 | "rapidness" => "Rapidness", 117 | "convenience" => "Convenience", 118 | "ourTeam" => "Our team", 119 | "cryptofirstMail" => "Add us : CryptoFirst", 120 | "legalNotice" => "Legal Notice", 121 | ); 122 | 123 | $sentences = array ( 124 | "buySell" => "Buy / Sell ", 125 | "by" => "by", 126 | "buySellNote" => "1st exchanger to propose transactions in person !", 127 | "countChains" => "8 Blockchains", 128 | "countCurrent" => "5 Currencies", 129 | "signUpWarning" => "I have read and agreed to the terms of service and privacy policy", 130 | "signUpWarning2" => "I have read and agreed to the terms of service and privacy policy", 131 | "rememberMe" => "Remember me", 132 | "toRecover" => "Click here to recover", 133 | "forgetPassword" => "Forget Password?", 134 | "easyText" => "Simply create an account in less than 2min to profit of all our features.", 135 | "fastText" => "Your cryptocurrency is sent immediately after receiving the payment !", 136 | "safeText" => "We don't stock your cryptocurrency, nor your money, everything is sent directly to your wallet or bank account.", 137 | "cheapText" => "The best way to promote cryptocurrencies is to offer low prices.

So we have cheaper rates than our competitors !", 138 | "bankTransferText" => "We accept SEPA / SWIFT traditional transfers.
Thanks to our financial partners, we also provide express transfers.

You receive your order immediately !", 139 | "cashText" => "Purchase by cash through our partner agencies, Western Union, Neosurf or Paysafecard.

You can also sell your cryptocurrencies for cash.", 140 | "creditCardText" => "Get your favorite cryptocurrencies in minutes without moving from home !

By CB, Visa, MasterCard, Amex, Maestro, Prepaid Card.", 141 | "regulateText" => "In order to combat fraud and money laundering, we approve to the AML / KYC policy.

All our payments way require identity verification.", 142 | "internationalText" => "We want to expand our network of physical agencies.

Our other means of payment are already available from everywhere !

The currencies accepted are:
EUR, USD, CAD, GBP, JPY.", 143 | "appMobileText" => "The mobile application is being created, in order to offer you even more simplicity !

Soon available on IOS and Android.", 144 | "tChatText" => "Want to chat with other people having same interest ?

We have set up an online chat, which will help the community flourish.", 145 | "onlineHelpText"=> "For any questions don't hesitate to contact us by the online help or in the contact section.

Our team will be happy to answer you as soon as possible !", 146 | "addressValue" => "128 rue de la Boétie 75008, Paris, France", 147 | "mobileNumber" => "+337 68 85 86 47", 148 | "emailAddress" => "info@cryptofirst.com", 149 | "welcomeTrollbox" => "Welcome to the Trollbox !", 150 | "temsConditionPrivacy" => " & ", 151 | "makeLove" => "Made with ", 152 | "contactUsBy" => "Contact us by : ", 153 | "answer77" => "We answer 7/7 from 9am to 8pm !", 154 | "transaction01" => "For any future transaction requests please contact us at : ", 155 | "buySellEmailAddr" => "sales@cryptofirst.com", 156 | "info01" => "For general inquiries, partnership, press, please contact us at : ", 157 | "infoExplain01" => "info@cryptofirst.com", 158 | "afterService01" => "For a transaction already made please contact us at : ", 159 | "afterSevAddr" => "support@cryptofirst.com", 160 | "haveKnownCrypto1" => "Where have you known Crypto#1 ? ", 161 | "allrightButtom" => "All right bottom !", 162 | "loginHere" => "Log in here", 163 | "dontAccount" => "Don't you have an account?", 164 | "signUphere" => "Sign up here", 165 | "displayChart" => "Display blockchain charts", 166 | "goHome" => "Go to Home", 167 | "haveRead" => "Have you read these?", 168 | "likeTitle" => "Like CryptoFirst's page on Facebook", 169 | "aboutUSIntro" => "Cryptofirst is the most safe, fast and confortable site for global transaction and exchangment through Crypto-currencies.
Our goal for the clients are follow :", 170 | "safetyIntro" => "We always eusure the 100% safe transaction of clients trough 5 kinds of currencies and 11 cryptos.", 171 | "confidentialityIntro" => "We don't ask the real name of clients. Clients can do all under the secret of identity information.", 172 | "rapidIntro" => "2 minutes. It's enough time to complete all transaction on our sites.", 173 | "convenienceIntro" => "How about you? You think Very comfortable to have any transaction on our site? Please feel free to give us any suggestions. We will try to satisfy all requirements of any clients perfectly continuously.", 174 | ); 175 | ?> -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/modules/captcha.php: -------------------------------------------------------------------------------- 1 | success): 10 | //contact form submission code 11 | $name = !empty($_POST['name'])?$_POST['name']:''; 12 | $email = !empty($_POST['email'])?$_POST['email']:''; 13 | $message = !empty($_POST['message'])?$_POST['message']:''; 14 | 15 | $to = 'contact@codexworld.com'; 16 | $subject = 'New contact form have been submitted'; 17 | $htmlContent = " 18 |

Contact request details

19 |

Name: ".$name."

20 |

Email: ".$email."

21 |

Message: ".$message."

22 | "; 23 | // Always set content-type when sending HTML email 24 | $headers = "MIME-Version: 1.0" . "\r\n"; 25 | $headers .= "Content-type:text/html;charset=UTF-8" . "\r\n"; 26 | // More headers 27 | $headers .= 'From:'.$name.' <'.$email.'>' . "\r\n"; 28 | //send email 29 | @mail($to,$subject,$htmlContent,$headers); 30 | 31 | $succMsg = 'Your contact request have submitted successfully.'; 32 | else: 33 | $errMsg = 'Robot verification failed, please try again.'; 34 | endif; 35 | else: 36 | $errMsg = 'Please click on the reCAPTCHA box.'; 37 | endif; 38 | else: 39 | $errMsg = ''; 40 | $succMsg = ''; 41 | endif; 42 | ?> -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/modules/getBTCRate.php: -------------------------------------------------------------------------------- 1 | 0 ) { 10 | die(substr($rateStr, $strpos + 1, strlen($rateStr) - $strpos - 2)); 11 | } else 12 | die("400"); 13 | } else 14 | die("400"); 15 | ?> -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/modules/get_initial_params.php: -------------------------------------------------------------------------------- 1 | 67 | 68 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/Frontend/terms.php: -------------------------------------------------------------------------------- 1 | 9 | 10 |
11 |
12 | 13 |
14 |
15 | 16 |
17 |
18 |
19 | 20 |
21 |
22 | 23 |
24 | 25 |
26 | 27 |
28 |
29 | 30 |
31 | 32 |
33 | 34 |
35 |
36 |
37 |
38 |
39 | 40 | 84 | 85 | -------------------------------------------------------------------------------- /PHP/CryptoFirst/README.md: -------------------------------------------------------------------------------- 1 |

It's a cryptocurrency exchange service

2 | 3 |

Abailable currencies are

4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |

2 | Various Web source such as components... 3 |

4 | 5 |

Contents

6 | 7 |

Django/

8 | 14 | 15 |

React/

16 | 22 | 23 |

PHP/

24 | 30 | 31 |

Typescript/

32 | -------------------------------------------------------------------------------- /React/Components/Wordart/index.jsx: -------------------------------------------------------------------------------- 1 | /** 2 | * REACT WORDART EDITOR 3 | * @author Victor Philamon & Jiners Enoheart 4 | * @published Feb 01, 2023 5 | * @modified Jul 06, 2023 6 | */ 7 | 8 | import React from "react" 9 | import { Editor } from "react-draft-wysiwyg" 10 | import "react-draft-wysiwyg/dist/react-draft-wysiwyg.css" 11 | import "./style.css" 12 | 13 | /** 14 | * Method to load file into 15 | * @param {string} path 16 | * @returns Promise to read file 17 | */ 18 | export default (props) => { 19 | if (!props.Contents) return <> 20 | 21 | const onEditorStateChange = state => props.setContents ? props.setContents(state) : false 22 | 23 | return 35 | } -------------------------------------------------------------------------------- /React/Components/Wordart/style.css: -------------------------------------------------------------------------------- 1 | .rdw-editor-wrapper { 2 | display: flex; 3 | flex-direction: column; 4 | justify-content: center; 5 | } 6 | 7 | .rdw-editor-main { 8 | width: 100%; 9 | min-height: 5em; 10 | } 11 | 12 | .rdw-option-wrapper[title="Embedded"], 13 | .rdw-option-wrapper[title="Image"], 14 | .rdw-option-wrapper[title="Remove"] { 15 | display: none; 16 | } 17 | 18 | .rdw-colorpicker-wrapper { 19 | order: 1; 20 | } 21 | .rdw-inline-wrapper { 22 | order: 2; 23 | } 24 | .rdw-block-wrapper { 25 | order: 3; 26 | } 27 | .rdw-fontsize-wrapper { 28 | order: 4; 29 | } 30 | .rdw-fontfamily-wrapper { 31 | order: 5; 32 | } 33 | .rdw-list-wrapper { 34 | order: 6; 35 | } 36 | .rdw-text-align-wrapper { 37 | order: 7; 38 | } 39 | .rdw-link-wrapper { 40 | order: 8; 41 | } 42 | .rdw-emoji-wrapper { 43 | order: 9; 44 | } 45 | .rdw-history-wrapper { 46 | order: 10; 47 | } 48 | -------------------------------------------------------------------------------- /React/Components/clock/index.jsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @description Component as Home page 3 | * @author Jiners Enoheart 4 | * @published June 09, 2023 5 | * @modified June 09, 2023 6 | */ 7 | 8 | import React from "react" 9 | import { now } from "../../../resource/time" 10 | import "./style.css" 11 | 12 | class Clock extends React.Component { 13 | constructor() { 14 | super() 15 | this.state = { 16 | time: [now("d H"), now("M"), now("N D, Y")], 17 | timerID: setInterval(() => 18 | this.setState({ time: [now("d H"), now("M"), now("N D, Y")] }), 30000) 19 | } 20 | } 21 | 22 | componentWillUnmount() { 23 | clearInterval(this.state.timerID) 24 | } 25 | 26 | render = () =>
27 |
28 | {this.state.time[0]} 29 | : 30 | {this.state.time[1]} 31 |
32 |
{this.state.time[2]}
33 |
34 | } 35 | 36 | export default Clock -------------------------------------------------------------------------------- /React/Components/clock/style.css: -------------------------------------------------------------------------------- 1 | .clock { 2 | text-align: center; 3 | font-size: 1em; 4 | font-weight: bold; 5 | } 6 | 7 | @keyframes fading { 8 | from { 9 | opacity: 0; 10 | } 11 | to { 12 | opacity: 1; 13 | } 14 | } 15 | 16 | .symbol { 17 | animation-name: fading; 18 | animation-duration: 1s; 19 | animation-iteration-count: infinite; 20 | } 21 | -------------------------------------------------------------------------------- /React/Components/iconInput/index.jsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @description Input text with ICON 3 | * @author Jiners Enoheart 4 | * @published June 02, 2023 5 | * @modified June 02, 2023 6 | */ 7 | 8 | import React, { useRef, useEffect } from "react" 9 | import "./style.css" 10 | 11 | export default (props) => { 12 | const input = useRef(null) 13 | 14 | /** 15 | * Function to get all the valid chars from val: ex: 0->9a->9 16 | * ex: 0->9 => 0123456789 17 | * @param {string} valid 18 | */ 19 | const calcValid = (valid) => { 20 | if (!valid) return 21 | let i = 0, j, k, before, after, direction = 1, temp 22 | 23 | while ((i = valid.indexOf("->")) > 0) { 24 | before = valid.substring(0, i) 25 | after = valid.substring(i + 2) 26 | j = valid.charAt(i - 1).charCodeAt(0) 27 | k = valid.charAt(i + 2).charCodeAt(0) 28 | direction = j < k ? 1 : -1 29 | temp = "" 30 | for (j = j + 1; j !== k; j += direction) temp += String.fromCharCode(j) 31 | valid = before + temp + after 32 | } 33 | return valid 34 | } 35 | let valid = calcValid(props.valid) 36 | 37 | // catch enter keyCode and handle login method recieved as props 38 | const keyDown = (event) => 39 | event.keyCode === 13 && props.handler !== undefined ? props.handler() : false 40 | 41 | //Function to check input valid 42 | const keyPress = (evt) => 43 | valid ? valid.indexOf(evt.key) >= 0 ? true : evt.preventDefault() 44 | : props.invalid ? props.invalid.indexOf(evt.key) >= 0 ? evt.preventDefault() : true 45 | : true 46 | 47 | useEffect(() => { 48 | if (props.bind) props.bind(input.current) 49 | }) 50 | 51 | useEffect(() => { 52 | if (props.autoFocus && !props.readOnly) input.current.focus() 53 | }, [props.autoFocus, props.readOnly]) 54 | 55 | return
56 | props.onChange(e.target.value)} 60 | readOnly={props.readOnly ? true : false} 61 | ref={input} 62 | /> 63 | 64 | {props.tooltip ? {props.message} : ""} 65 |
66 | }; 67 | -------------------------------------------------------------------------------- /React/Components/iconInput/style.css: -------------------------------------------------------------------------------- 1 | * { 2 | box-sizing: border-box; 3 | } 4 | 5 | .icon-input { 6 | position: relative; 7 | } 8 | 9 | .icon-input > input { 10 | border: none; 11 | outline: none; 12 | font-size: 0.75em; 13 | padding: 0.2em; 14 | padding-left: 2.2em; 15 | border-radius: 0.2em; 16 | width: 100%; 17 | } 18 | 19 | .icon-input > i { 20 | position: absolute; 21 | left: 0.2em; 22 | top:0.2em; 23 | } -------------------------------------------------------------------------------- /React/Components/imageInput/index.jsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @description Image Input Component 3 | * @published Jan 31, 2023 4 | * @modified Jun 16, 2023 5 | * @author Davies Martines & Jiners Enoheart 6 | */ 7 | 8 | import React, { useRef } from "react" 9 | import "./style.css" 10 | 11 | export default (props) => { 12 | const reader = new FileReader() //Processor loading image 13 | const image = useRef() 14 | const file = useRef() 15 | 16 | /** 17 | * @description function to apply buffer of image file 18 | * @param {object} event 19 | */ 20 | reader.onload = (event) => { 21 | image.current.src = event.target.result 22 | if (props.buffer) props.buffer(event.target.result) 23 | } 24 | 25 | /** 26 | * Action processor when click on component 27 | */ 28 | const handleInputFile = () => file.current.click() 29 | 30 | /** 31 | * Processor when change its image 32 | */ 33 | const handleChangeFile = () => { 34 | if (file.current.files[0]) { 35 | reader.readAsDataURL(file.current.files[0]) 36 | if (props.onChange) props.onChange(file.current.files[0]) 37 | } 38 | } 39 | 40 | return ( 41 |
42 | ... 44 | 46 |
47 | ); 48 | }; 49 | -------------------------------------------------------------------------------- /React/Components/imageInput/style.css: -------------------------------------------------------------------------------- 1 | .image-input { 2 | position: relative; 3 | margin: auto; 4 | } 5 | 6 | .image-input img { 7 | width: 100%; 8 | height: 100%; 9 | border: none; 10 | border-radius: 50%; 11 | padding: 0.2em; 12 | cursor: pointer; 13 | } 14 | 15 | .image-input .desc { 16 | text-align: center; 17 | position: absolute; 18 | top: 50%; 19 | left: 50%; 20 | visibility: hidden; 21 | } 22 | 23 | .image-input input[type="file"] { 24 | display: none; 25 | } 26 | 27 | .image-input:hover img { 28 | opacity: 0.5; 29 | } 30 | 31 | .image-input:hover desc { 32 | visibility: visible; 33 | } 34 | -------------------------------------------------------------------------------- /React/Components/itemList/index.jsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @description Item-list component 3 | * @author Jiners Enoheart 4 | * @published Jul 07, 2023 5 | * @modified Jul 16, 2023 6 | */ 7 | 8 | import React, { useState, useEffect } from "react" 9 | import "./style.css" 10 | 11 | export default (props) => { 12 | let nothing =
Nothing yet
13 | if (!props.Data || props.Data <= 0) 14 | return nothing 15 | 16 | const [PageNo, setPageNo] = useState(props.PageNo) 17 | if (props.PageCount < PageNo) setPageNo(1) 18 | 19 | useEffect((PageNo) => { 20 | if(props.PageNo !== PageNo) setPageNo(props.PageNo) 21 | }, [props.PageNo]) 22 | 23 | return
24 |
25 | {props.Data.map((item, index) => 26 | props.Method.Render ? props.Method.Render(item, index) : "...")} 27 |
28 | {props.StatusEl ? props.StatusEl : " "} 29 |
30 | 31 | PageNo > 1 ? (setPageNo(1), props.Method.Refresh(1)) : false} /> 32 | PageNo > 1 ? (setPageNo(PageNo - 1), props.Method.Refresh(PageNo - 1)) : false} /> 34 | setPageNo(evt.target.value)} 36 | onKeyPress={(evt) => evt.key >= '0' && evt.key <= '9' ? true : evt.preventDefault()} 37 | onKeyDown={(evt) => { 38 | if (evt.keyCode === 13) { 39 | let pn = evt.target.value < 1 ? 1 : 40 | evt.target.value > props.PageCount ? 41 | props.PageCount : 42 | evt.target.value 43 | setPageNo(pn) 44 | if (props.Method.Refresh) props.Method.Refresh(pn) 45 | } 46 | }} /> 47 |  /  48 | {props.PageCount ? props.PageCount : 0} 49 | 50 | PageNo < props.PageCount ? 51 | (setPageNo(PageNo + 1), props.Method.Refresh(parseInt(PageNo) + 1)) : 52 | false} /> 53 | 55 | PageNo < props.PageCount ? 56 | (setPageNo(props.PageCount), props.Method.Refresh(props.PageCount)) : 57 | false} /> 58 |
59 |
60 | } -------------------------------------------------------------------------------- /React/Components/itemList/style.css: -------------------------------------------------------------------------------- 1 | .item-list { 2 | flex-grow: 100; 3 | display: flex; 4 | flex-direction: column; 5 | } 6 | 7 | .nothing { 8 | text-align: center; 9 | font-weight: bold; 10 | font-size: 1em; 11 | } 12 | 13 | .item-list > .list { 14 | display: flex; 15 | flex-direction: row; 16 | flex-wrap: wrap; 17 | flex-grow: 100; 18 | } 19 | 20 | .item-list > .pagenation { 21 | padding-top: 0.5em; 22 | padding-bottom: 0.2em; 23 | text-align: center; 24 | font-size: 0.8em; 25 | } 26 | 27 | .item-list > .pagenation input { 28 | text-align: center; 29 | width: 3em; 30 | } 31 | 32 | .item-list > .pagenation i { 33 | cursor: pointer; 34 | } 35 | 36 | .item-list .item .header > span { 37 | float: left; 38 | font-size: 1em; 39 | width: calc(100% - 1.2em); 40 | height: 1.2em; 41 | overflow: hidden; 42 | cursor: pointer; 43 | } 44 | 45 | .item-list .item .date { 46 | font-size: 0.5em; 47 | font-weight: bold; 48 | text-align: right; 49 | } 50 | 51 | .item-list .item .header > i { 52 | font-size: 0.8em; 53 | font-weight: bold; 54 | float: right; 55 | cursor: pointer; 56 | } 57 | -------------------------------------------------------------------------------- /React/Components/searchBar/index.jsx: -------------------------------------------------------------------------------- 1 | import React, { useRef } from "react" 2 | import "./style.css" 3 | 4 | export default (props) => { 5 | const input = useRef(null) 6 | 7 | return
8 | props.setSearch ? props.setSearch(evt.target.value) : false} 10 | onKeyDown={(evt) => evt.keyCode === 13 && props.doing ? props.doing() : false} 11 | placeholder={props.placeholder ? props.placeholder : ""} /> 12 | props.doing ? props.doing() : false} /> 14 |
15 | } -------------------------------------------------------------------------------- /React/Components/searchBar/style.css: -------------------------------------------------------------------------------- 1 | .search-bar { 2 | width: 100%; 3 | } 4 | 5 | .search-bar input { 6 | font-size: 1em; 7 | width: calc(100% - 1.5em); 8 | } 9 | 10 | 11 | -------------------------------------------------------------------------------- /React/Components/select-search/index.jsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @author Jiners Enoheart 3 | * @published Jun 27, 2023 4 | * @modified Jun 27, 2023 5 | * @description Component as select with function to search by text input 6 | */ 7 | 8 | import React, { useState, useRef, useEffect } from "react" 9 | import "./style.css" 10 | 11 | export default (props) => { 12 | let selectedItem = props.list && props.value ? props.list.find(item => item.value === props.value) : null 13 | const [search, setSearch] = useState(selectedItem ? selectedItem.Name : "") 14 | const [typing, setTyping] = useState(false) 15 | const [visibleList, setVisibleList] = useState(false) 16 | let input = useRef() 17 | 18 | useEffect(() => { 19 | if (props.bind) props.bind(input.current) 20 | if (!typing && !props.value) setSearch("") 21 | }, [props, typing, setSearch]) 22 | 23 | return
24 |
25 |
26 | {!props.value ? : 27 | selectedItem ? 28 | selectedItem.img ? 29 | ... : 30 | 31 | : ""} 32 |
33 |
34 | { 37 | setSearch(evt.target.value) 38 | setVisibleList(true) 39 | }} 40 | onFocus={() => { 41 | setTyping(true) 42 | setVisibleList(true) 43 | }} 44 | onClick={() => setVisibleList(true)} 45 | onBlur={(evt) => { 46 | setTyping(false) 47 | if (!evt.target.value && props.onChange) props.onChange() 48 | }} /> 49 |
50 | 51 |
52 |
53 | 54 |
55 | 56 |
setVisibleList(false)}> 58 |
{ 60 | if (props.onChange) props.onChange() 61 | setSearch("") 62 | setVisibleList(false) 63 | }} 64 | > 65 | { } {"..."} 66 |
67 | {props.list && props.list.length > 0 68 | ? props.list.filter(item => search ? 69 | item.Name.toLowerCase().indexOf(search.toLowerCase()) >= 0 : 70 | true) 71 | .map((item, index) => { 72 | let icon = item.img ? ... : 73 | 74 | return
{ 76 | if (props.onChange) props.onChange(item.value) 77 | setSearch(item.Name) 78 | setVisibleList(false) 79 | }} 80 | key={`item-${index}`}> 81 | {icon} {item.Name} 82 |
83 | }) 84 | : '' 85 | } 86 |
87 |
88 | } -------------------------------------------------------------------------------- /React/Components/select-search/style.css: -------------------------------------------------------------------------------- 1 | .select-search { 2 | position: relative; 3 | } 4 | 5 | .select-search .header input { 6 | width: 100%; 7 | text-align: center; 8 | } 9 | 10 | .select-search .list { 11 | max-height: 6em; 12 | overflow: auto; 13 | position: absolute; 14 | top: 1.2em; 15 | width: 100%; 16 | } 17 | 18 | .select-search .header i { 19 | cursor: pointer; 20 | } 21 | 22 | .select-search .header img { 23 | height: 1.1em; 24 | width: 1.1em; 25 | } 26 | 27 | .select-search .header i:hover { 28 | opacity: 0.9; 29 | } 30 | 31 | .select-search .header input { 32 | padding: 0px; 33 | border: none; 34 | outline: none; 35 | font-size: 1em; 36 | background: none; 37 | } 38 | 39 | .select-search .list img { 40 | border-radius: 50%; 41 | height: 1.5em; 42 | } 43 | 44 | .select-search .list .item { 45 | cursor: pointer; 46 | } 47 | -------------------------------------------------------------------------------- /React/Components/switch/index.jsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import "./style.css" 3 | 4 | export default (props) => { 5 | return
props.set ? props.set(!props.value) : false}> 6 |
8 | {props.icons.true} 9 |
10 |
12 | {props.icons.false}
13 |
14 |
15 | } -------------------------------------------------------------------------------- /React/Components/switch/style.css: -------------------------------------------------------------------------------- 1 | .switch { 2 | width: 70px; 3 | height: 20px; 4 | font-weight: bold; 5 | cursor: pointer; 6 | border-radius: 10px; 7 | padding: 2px; 8 | } 9 | 10 | .switch div { 11 | width: 50%; 12 | height: 16px; 13 | display: flex; 14 | justify-content: center; 15 | align-items: center; 16 | font-size: 12px; 17 | } 18 | 19 | .switch div:nth-child(1) { 20 | border-radius: 8px 0px 0px 8px; 21 | float: left; 22 | } 23 | 24 | .switch div:nth-child(2) { 25 | border-radius: 0px 8px 8px 0px; 26 | float: right; 27 | } 28 | -------------------------------------------------------------------------------- /React/Components/table/index.jsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @description Table component 3 | * @author Jiners Enoheart 4 | * @published June 02, 2023 5 | * @modified June 16, 2023 6 | */ 7 | 8 | import React, { useState } from "react" 9 | import "./style.css" 10 | 11 | export default (props) => { 12 | let nothing =
 
13 | if (!props || !props.Field || !Array.isArray(props.Field)) 14 | return nothing 15 | 16 | const [PageNo, setPageNo] = useState(props.PageNo) 17 | 18 | return 19 | 20 | 21 | 25 | 26 | {props.Field.map((item, index) => { 27 | return 55 | })} 56 | 60 | 61 | 62 | 64 | 65 | {props.Field.map((item, index) => item.Searchable ? 66 | : 82 | )} 83 | 85 | 86 | 87 | 88 | 89 | {props.Data && Array.isArray(props.Data) && props.Data.length > 0 ? 90 | props.Data.map((item, index) => 91 | 94 | 96 | {props.Field.map((field, n) => 97 | )} 108 | 112 | ) : 113 | 114 | 115 | } 116 | {props.StatusEl ? 117 | : 120 | } 121 | 122 | 126 | 152 | 156 | 157 | 158 |
22 | 24 |  No 28 | {item.Name} 29 | {item.Order && props.Order ? 30 | item.Key ? 31 | Array.isArray(item.Key) ? 32 | !props.Order[item.Key[0]] || props.Order[item.Key[0]] === 'ASC' ? 33 | < i className="icon-down-dir" onClick={() => 34 | props.Method && props.Method.SetOrder ? 35 | props.Method.SetOrder(item.Key[0], 'DESC') : false} /> : 36 | < i className="icon-up-dir" onClick={() => 37 | props.Method && props.Method.SetOrder ? 38 | props.Method.SetOrder(item.Key[0], 'ASC') : false} /> : 39 | !props.Order[item.Key] || props.Order[item.Key] === 'ASC' ? 40 | < i className="icon-down-dir" onClick={() => 41 | props.Method && props.Method.SetOrder ? 42 | props.Method.SetOrder(item.Key, 'DESC') : false} /> : 43 | < i className="icon-up-dir" onClick={() => 44 | props.Method && props.Method.SetOrder ? 45 | props.Method.SetOrder(item.Key, 'ASC') : false} /> : 46 | !props.Order[item.Name] || props.Order[item.Name] === 'ASC' ? 47 | < i className="icon-down-dir" onClick={() => 48 | props.Method && props.Method.SetOrder ? 49 | props.Method.SetOrder(item.Name, 'DESC') : false} /> : 50 | < i className="icon-up-dir" onClick={() => 51 | props.Method && props.Method.SetOrder ? 52 | props.Method.SetOrder(item.Name, 'ASC') : false} /> : 53 | ""} 54 | 57 | 59 |
63 | props.Method.Refresh ? (props.Method.Refresh(1), setPageNo(1)) : false} /> 67 | {item.Type === "select" ? 68 | : 78 | props.Method.SetSearch ? 79 | props.Method.SetSearch(item.Key ? Array.isArray(item.Key) ? item.Key[0] : item.Key : item.Name, 80 | evt.target.value) : false} />} 81 | 84 | props.Method.Refresh ? (props.Method.Refresh(1), setPageNo(1)) : false} />
{props.Method.Edit ? 92 | props.Method.Edit(index, item.ID)} /> : <>} 93 | 95 | {(props.PageNo - 1) * props.CountPerPage + index + 1} 98 | {field.Render ? 99 | field.Render(Array.isArray(field.Key) ? 100 | field.Key.map(id => item[id]) : 101 | field.Key ? 102 | item[field.Key] : 103 | item[field.Name]) : 104 | field.Key ? 105 | item[field.Key] : 106 | item[field.Name]} 107 | {props.Method.Delete ? 109 | props.Method.Delete(index, item.ID)} /> : 110 | props.Method.Edit ? 111 | props.Method.Edit(index, item.ID)} /> : ""}
None
118 | {props.StatusEl ? props.StatusEl : " "} 119 |
123 | 125 | 127 | 128 | PageNo > 1 ? (setPageNo(1), props.Method.Refresh(1)) : false} /> 129 | PageNo > 1 ? (setPageNo(PageNo - 1), props.Method.Refresh(PageNo - 1)) : false} /> 131 | setPageNo(evt.target.value)} 133 | onKeyPress={(evt) => evt.key >= '0' && evt.key <= '9' ? true : evt.preventDefault()} 134 | onKeyDown={(evt) => { 135 | if (evt.keyCode === 13) { 136 | let pn = evt.target.value < 1 ? 1 : 137 | evt.target.value > props.PageCount ? 138 | props.PageCount : 139 | evt.target.value 140 | setPageNo(pn) 141 | if (props.Method.Refresh) props.Method.Refresh(pn) 142 | } 143 | }} 144 | /> 145 |  /  146 | {props.PageCount ? props.PageCount : 0} 147 | 148 | PageNo < props.PageCount ? (setPageNo(PageNo + 1), props.Method.Refresh(PageNo + 1)) : false} /> 149 | 150 | PageNo < props.PageCount ? (setPageNo(props.PageCount), props.Method.Refresh(props.PageCount)) : false} /> 151 | 153 | 155 |
159 | } -------------------------------------------------------------------------------- /React/Components/table/style.css: -------------------------------------------------------------------------------- 1 | table.itct { 2 | border-radius: 0.45em; 3 | width: 100%; 4 | } 5 | 6 | table.itct td { 7 | margin: 0.1em; 8 | } 9 | 10 | table.itct thead td { 11 | font-size: 0.75em; 12 | font-weight: bold; 13 | text-align: center; 14 | } 15 | 16 | table.itct thead td input { 17 | width: 100%; 18 | font-size: 0.8em; 19 | text-align: center; 20 | } 21 | 22 | table.itct i { 23 | cursor: pointer; 24 | } 25 | 26 | table.itct i:hover { 27 | opacity: 0.75; 28 | } 29 | 30 | table.itct .status, 31 | table.itct .pagenation { 32 | font-size: 0.9em; 33 | background: none; 34 | } 35 | 36 | table.itct .PageInput { 37 | padding: 0px 0.1em 0px 0.1em; 38 | } 39 | -------------------------------------------------------------------------------- /React/README.md: -------------------------------------------------------------------------------- 1 | # React 2 | Useful react components & solutions 3 | -------------------------------------------------------------------------------- /Typescript/CRUD/.gitignore: -------------------------------------------------------------------------------- 1 | client/node_modules 2 | server/node_modules 3 | ~* -------------------------------------------------------------------------------- /Typescript/CRUD/client/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/README.md: -------------------------------------------------------------------------------- 1 | # Getting Started with Create React App 2 | 3 | This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). 4 | 5 | ## Available Scripts 6 | 7 | In the project directory, you can run: 8 | 9 | ### `npm start` 10 | 11 | Runs the app in the development mode.\ 12 | Open [http://localhost:3000](http://localhost:3000) to view it in the browser. 13 | 14 | The page will reload if you make edits.\ 15 | You will also see any lint errors in the console. 16 | 17 | ### `npm test` 18 | 19 | Launches the test runner in the interactive watch mode.\ 20 | See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. 21 | 22 | ### `npm run build` 23 | 24 | Builds the app for production to the `build` folder.\ 25 | It correctly bundles React in production mode and optimizes the build for the best performance. 26 | 27 | The build is minified and the filenames include the hashes.\ 28 | Your app is ready to be deployed! 29 | 30 | See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. 31 | 32 | ### `npm run eject` 33 | 34 | **Note: this is a one-way operation. Once you `eject`, you can’t go back!** 35 | 36 | If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. 37 | 38 | Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own. 39 | 40 | You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it. 41 | 42 | ## Learn More 43 | 44 | You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). 45 | 46 | To learn React, check out the [React documentation](https://reactjs.org/). 47 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "my-app", 3 | "version": "0.1.0", 4 | "private": true, 5 | "dependencies": { 6 | "@testing-library/jest-dom": "^5.17.0", 7 | "@testing-library/react": "^13.4.0", 8 | "@testing-library/user-event": "^13.5.0", 9 | "@types/jest": "^27.5.2", 10 | "@types/node": "^16.18.68", 11 | "@types/react": "^18.2.45", 12 | "@types/react-dom": "^18.2.18", 13 | "axios": "^1.6.3", 14 | "mini.css": "^3.0.1", 15 | "prop-types": "^15.8.1", 16 | "react": "^18.2.0", 17 | "react-dom": "^18.2.0", 18 | "react-redux": "^9.0.4", 19 | "react-scripts": "5.0.1", 20 | "redux": "^5.0.1", 21 | "redux-thunk": "^3.1.0", 22 | "typescript": "^4.9.5", 23 | "web-vitals": "^2.1.4" 24 | }, 25 | "scripts": { 26 | "start": "react-scripts start", 27 | "build": "react-scripts build", 28 | "test": "react-scripts test", 29 | "eject": "react-scripts eject" 30 | }, 31 | "eslintConfig": { 32 | "extends": [ 33 | "react-app", 34 | "react-app/jest" 35 | ] 36 | }, 37 | "browserslist": { 38 | "production": [ 39 | ">0.2%", 40 | "not dead", 41 | "not op_mini all" 42 | ], 43 | "development": [ 44 | "last 1 chrome version", 45 | "last 1 firefox version", 46 | "last 1 safari version" 47 | ] 48 | }, 49 | "proxy" : "localhost:5/api", 50 | "devDependencies": { 51 | "@types/react-redux": "^7.1.33" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Typescript/CRUD/client/public/favicon.ico -------------------------------------------------------------------------------- /Typescript/CRUD/client/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 12 | 13 | 17 | 18 | 27 | React App 28 | 29 | 30 | 31 |
32 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/public/logo192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Typescript/CRUD/client/public/logo192.png -------------------------------------------------------------------------------- /Typescript/CRUD/client/public/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SdDev0119/Web/48f02e16770b78d4912a38ef48a8ed0d42151443/Typescript/CRUD/client/public/logo512.png -------------------------------------------------------------------------------- /Typescript/CRUD/client/public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | }, 10 | { 11 | "src": "logo192.png", 12 | "type": "image/png", 13 | "sizes": "192x192" 14 | }, 15 | { 16 | "src": "logo512.png", 17 | "type": "image/png", 18 | "sizes": "512x512" 19 | } 20 | ], 21 | "start_url": ".", 22 | "display": "standalone", 23 | "theme_color": "#000000", 24 | "background_color": "#ffffff" 25 | } 26 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/src/App.tsx: -------------------------------------------------------------------------------- 1 | import React, { useState, useRef, useCallback, useEffect } from "react"; 2 | import http from ".//api/api"; 3 | export interface DataFormat { 4 | ID: number; 5 | name: string; 6 | sex: string; 7 | birthday: string; 8 | } 9 | 10 | const App: React.FC = () => { 11 | const [data, setData] = useState([]); 12 | const [pulsFlag, setPlusFlag] = useState(false); 13 | const [updateFlag, setUpdateFlag] = useState(-1); 14 | const [loadFlag, setLoadFlag] = useState(false); 15 | 16 | const addName = useRef(null); 17 | const addSex = useRef(null); 18 | const addBirthday = useRef(null); 19 | const updateName = useRef(null); 20 | const updateSex = useRef(null); 21 | const updateBirthday = useRef(null); 22 | 23 | const add = async () => { 24 | try { 25 | setPlusFlag(false); 26 | setUpdateFlag(-1); 27 | await http.post("/add", { 28 | name: addName.current?.value, 29 | sex: addSex.current?.value, 30 | birthday: addBirthday.current?.value, 31 | }); 32 | } catch (err) { 33 | alert(err); 34 | } 35 | setLoadFlag(!loadFlag); 36 | }; 37 | 38 | const del = (index: number): void => { 39 | try { 40 | http.post("/del", { ID: index }); 41 | } catch (err) { 42 | alert(err); 43 | } 44 | setPlusFlag(false); 45 | setUpdateFlag(-1); 46 | setLoadFlag(!loadFlag); 47 | }; 48 | 49 | const update = async (index: number) => { 50 | try { 51 | setPlusFlag(false); 52 | setUpdateFlag(-1); 53 | await http.post("/update", { 54 | ID: index, 55 | name: updateName.current?.value, 56 | sex: updateSex.current?.value, 57 | birthday: updateBirthday.current?.value, 58 | }); 59 | } catch (err) { 60 | alert(err); 61 | } 62 | setLoadFlag(!loadFlag); 63 | }; 64 | 65 | const get = useCallback(async () => { 66 | try { 67 | let result: any = await http.post("/get"); 68 | setData(result.data); 69 | } catch (err) { 70 | alert(err); 71 | } 72 | }, []); 73 | 74 | useEffect(() => { 75 | get(); 76 | }, [get, loadFlag]); 77 | 78 | return ( 79 | <> 80 |
81 |

CRUD APP

82 |
83 |
84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 94 | 95 | 96 | 97 | {pulsFlag ? ( 98 | 99 | 100 | 103 | 106 | 109 | 112 | 113 | ) : ( 114 | "" 115 | )} 116 | {data 117 | ? data.map((val: DataFormat, index: number): JSX.Element => { 118 | if (index === updateFlag) 119 | return ( 120 | 121 | 122 | 129 | 136 | 143 | 147 | 148 | ); 149 | else 150 | return ( 151 | { 154 | setUpdateFlag(index); 155 | setPlusFlag(false); 156 | }} 157 | > 158 | 159 | 160 | 161 | 162 | 163 | 164 | ); 165 | }) 166 | : ""} 167 | 168 |
NoNamesexbirthday 92 | 93 |
101 | 102 | 104 | 105 | 107 | 108 | 110 | 111 |
{index + 1} 123 | 128 | 130 | 135 | 137 | 142 | 144 | 145 | 146 |
{index + 1}{val.name}{val.sex}{val.birthday}
169 |
170 | 171 | ); 172 | }; 173 | 174 | export default App; 175 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/src/api/api.ts: -------------------------------------------------------------------------------- 1 | import axios from 'axios' 2 | 3 | export default axios.create({ 4 | baseURL : "http://localhost:5/api/", 5 | headers : { 6 | "Content-Type" : "application/json" 7 | } 8 | }) -------------------------------------------------------------------------------- /Typescript/CRUD/client/src/index.css: -------------------------------------------------------------------------------- 1 | @import "../node_modules/mini.css/dist/mini-default.min.css"; 2 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/src/index.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom/client'; 3 | import './index.css'; 4 | import App from './App'; 5 | 6 | const root = ReactDOM.createRoot( 7 | document.getElementById('root') as HTMLElement 8 | ); 9 | 10 | root.render( 11 | 12 | 13 | 14 | ); 15 | -------------------------------------------------------------------------------- /Typescript/CRUD/client/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es5", 4 | "lib": [ 5 | "dom", 6 | "dom.iterable", 7 | "esnext" 8 | ], 9 | "allowJs": true, 10 | "skipLibCheck": true, 11 | "esModuleInterop": true, 12 | "allowSyntheticDefaultImports": true, 13 | "strict": true, 14 | "forceConsistentCasingInFileNames": true, 15 | "noFallthroughCasesInSwitch": true, 16 | "module": "esnext", 17 | "moduleResolution": "node", 18 | "resolveJsonModule": true, 19 | "isolatedModules": true, 20 | "noEmit": true, 21 | "jsx": "react-jsx" 22 | }, 23 | "include": [ 24 | "src" 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /Typescript/CRUD/readme.md: -------------------------------------------------------------------------------- 1 | CRUD app using React + Express + PostgresQL by Typescript -------------------------------------------------------------------------------- /Typescript/CRUD/server/.env: -------------------------------------------------------------------------------- 1 | PORT = 5 2 | 3 | DB_HOST = 127.0.0.1 4 | DB_PORT = 3306 5 | DB_USRE = root 6 | DB_PASS = 7 | DATABASE = test -------------------------------------------------------------------------------- /Typescript/CRUD/server/config/db.ts: -------------------------------------------------------------------------------- 1 | import { createPool } from 'mysql2' 2 | 3 | import dotenv from 'dotenv' 4 | import { Query, QueryError } from 'mysql2/typings/mysql/lib/protocol/sequences/Query' 5 | import { PoolConnection } from 'mysql2/typings/mysql/lib/PoolConnection' 6 | import { any } from 'prop-types' 7 | 8 | dotenv.config() 9 | 10 | const connetion = createPool({ 11 | host: process.env.DB_HOST, 12 | port: 3306, 13 | user: process.env.DB_USER, 14 | password: process.env.DB_PASS, 15 | database: process.env.DB_DATABASE 16 | }) 17 | 18 | const executeQuery = (query: string): Promise => { 19 | return new Promise((resolve, reject) => { 20 | connetion.getConnection((err: NodeJS.ErrnoException | null, conn: PoolConnection) => { 21 | conn.query(query, (err, resultSet: any[]) => { 22 | conn.release(); 23 | if (err) { 24 | return reject(err); 25 | } 26 | return resolve(resultSet); 27 | }); 28 | }); 29 | }); 30 | } 31 | 32 | export default executeQuery 33 | -------------------------------------------------------------------------------- /Typescript/CRUD/server/config/dbpost.ts: -------------------------------------------------------------------------------- 1 | const { Pool } = require("pg") 2 | const pool = 3 | new Pool({ 4 | user: 'postgres', 5 | host: 'localhost', 6 | database: 'postgres', 7 | password: '55555', 8 | port: '5432', 9 | max: 20, // Maximum number of clients in the pool 10 | idleTimeoutMillis: 30000, // How long a client is allowed to remain idle before being closed 11 | }); 12 | 13 | // Now you can use the pool to execute queries 14 | 15 | 16 | pool.connect(function (err: NodeJS.ErrnoException) { 17 | if (err) throw err; 18 | console.log("Connected!"); 19 | }); 20 | 21 | const executeQuery = (query: string): Promise => { 22 | return new Promise((res, rej) => { 23 | pool.query(query, (err: NodeJS.ErrnoException | null, resultSet: any[]) => { 24 | if (err) return rej(err) 25 | else return res(resultSet) 26 | }); 27 | }) 28 | } 29 | 30 | export default executeQuery -------------------------------------------------------------------------------- /Typescript/CRUD/server/index.ts: -------------------------------------------------------------------------------- 1 | import express, { Express, Request, Response, Application } from "express"; 2 | import bodyParser from "body-parser"; 3 | import dotenv from 'dotenv' 4 | import { Router } from './routes/api' 5 | import cors from 'cors' 6 | //For env File 7 | dotenv.config() 8 | 9 | const app: Application = express() 10 | const port = process.env.PORT || 8000 11 | 12 | app.use(bodyParser.json()) 13 | app.use(bodyParser.urlencoded({ extended: false })) 14 | app.use(cors()) 15 | 16 | app.get("/", (req: Request, res: Response) => { 17 | res.send("Hello, I am Kornel") 18 | }) 19 | 20 | 21 | app.use("/api", Router) 22 | 23 | app.listen(port, () => { 24 | console.log(`server listening ${port}`) 25 | }) -------------------------------------------------------------------------------- /Typescript/CRUD/server/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "server", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "build": "npx tsc", 8 | "start": "node dist/index.js", 9 | "dev": "nodemon index.ts" 10 | }, 11 | "keywords": [], 12 | "author": "", 13 | "license": "ISC", 14 | "dependencies": { 15 | "body-parser": "^1.20.2", 16 | "cors": "^2.8.5", 17 | "dotenv": "^16.3.1", 18 | "express": "^4.18.2", 19 | "mysql2": "^3.6.5", 20 | "nodemon": "^3.0.2", 21 | "pg": "^8.11.3" 22 | }, 23 | "devDependencies": { 24 | "@types/cors": "^2.8.17", 25 | "@types/express": "^4.17.21", 26 | "ts-node-dev": "^2.0.0", 27 | "typescript": "^5.3.3" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Typescript/CRUD/server/routes/api.ts: -------------------------------------------------------------------------------- 1 | import express, { Express, Response, Request } from "express" 2 | 3 | import executeQuery from "../config/dbpost" 4 | 5 | export const Router = express.Router() 6 | 7 | Router.post("/add", async (req: Request, res: Response) => { 8 | if (req.body.name && req.body.sex && req.body.birthday) { 9 | try { 10 | await executeQuery(`INSERT INTO "test" (name,sex,birthday) VALUES ('${req.body.name}','${req.body.sex}','${req.body.birthday}')`) 11 | res.status(200).send() 12 | } catch(err){ 13 | console.log(err) 14 | res.status(500).send() 15 | } 16 | } else 17 | res.status(400) 18 | }) 19 | 20 | Router.post("/del", async (req: Request, res: Response) => { 21 | if (req.body.ID) { 22 | try { 23 | await executeQuery(`DELETE FROM "test" WHERE id = ${req.body.ID}`) 24 | res.status(200).send() 25 | } catch(err){ 26 | console.log(err) 27 | res.status(500).send() 28 | } 29 | } 30 | }) 31 | 32 | Router.post("/update", async (req: Request, res: Response) => { 33 | if (req.body.name && req.body.sex && req.body.birthday, req.body.ID) { 34 | try { 35 | await executeQuery(`UPDATE "test" set "name" = '${req.body.name}', "sex" = '${req.body.sex}', "birthday" = '${req.body.birthday}' WHERE "id" = '${req.body.ID}'`) 36 | res.status(200).send() 37 | } catch(err){ 38 | console.log(err) 39 | res.status(500).send() 40 | } 41 | } 42 | }) 43 | 44 | Router.post("/get", async (req: Request, res: Response) => { 45 | try { 46 | let result : any = await executeQuery(`SELECT "id" AS "ID", "name", "sex", "birthday" FROM "test"`) 47 | res.status(200).send(result.rows) 48 | } catch(err){ 49 | console.log(err) 50 | res.status(500).send() 51 | } 52 | }) 53 | --------------------------------------------------------------------------------