first commit
This commit is contained in:
0
resources/css/app.css
vendored
Normal file
0
resources/css/app.css
vendored
Normal file
1
resources/js/app.js
vendored
Normal file
1
resources/js/app.js
vendored
Normal file
@@ -0,0 +1 @@
|
||||
require('./bootstrap');
|
41
resources/js/bootstrap.js
vendored
Normal file
41
resources/js/bootstrap.js
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
window._ = require('lodash');
|
||||
|
||||
/**
|
||||
* We'll load jQuery and the Bootstrap jQuery plugin which provides support
|
||||
* for JavaScript based Bootstrap features such as modals and tabs. This
|
||||
* code may be modified to fit the specific needs of your application.
|
||||
*/
|
||||
|
||||
try {
|
||||
window.Popper = require('popper.js').default;
|
||||
window.$ = window.jQuery = require('jquery');
|
||||
|
||||
require('bootstrap');
|
||||
} catch (e) {}
|
||||
|
||||
/**
|
||||
* We'll load the axios HTTP library which allows us to easily issue requests
|
||||
* to our Laravel back-end. This library automatically handles sending the
|
||||
* CSRF token as a header based on the value of the "XSRF" token cookie.
|
||||
*/
|
||||
|
||||
window.axios = require('axios');
|
||||
|
||||
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
|
||||
|
||||
/**
|
||||
* Echo exposes an expressive API for subscribing to channels and listening
|
||||
* for events that are broadcast by Laravel. Echo and event broadcasting
|
||||
* allows your team to easily build robust real-time web applications.
|
||||
*/
|
||||
|
||||
// import Echo from 'laravel-echo';
|
||||
|
||||
// window.Pusher = require('pusher-js');
|
||||
|
||||
// window.Echo = new Echo({
|
||||
// broadcaster: 'pusher',
|
||||
// key: process.env.MIX_PUSHER_APP_KEY,
|
||||
// cluster: process.env.MIX_PUSHER_APP_CLUSTER,
|
||||
// forceTLS: true
|
||||
// });
|
20
resources/lang/en/auth.php
Normal file
20
resources/lang/en/auth.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Authentication Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are used during authentication for various
|
||||
| messages that we need to display to the user. You are free to modify
|
||||
| these language lines according to your application's requirements.
|
||||
|
|
||||
*/
|
||||
|
||||
'failed' => 'These credentials do not match our records.',
|
||||
'password' => 'The provided password is incorrect.',
|
||||
'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
|
||||
|
||||
];
|
19
resources/lang/en/pagination.php
Normal file
19
resources/lang/en/pagination.php
Normal file
@@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Pagination Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are used by the paginator library to build
|
||||
| the simple pagination links. You are free to change them to anything
|
||||
| you want to customize your views to better match your application.
|
||||
|
|
||||
*/
|
||||
|
||||
'previous' => '« Previous',
|
||||
'next' => 'Next »',
|
||||
|
||||
];
|
22
resources/lang/en/passwords.php
Normal file
22
resources/lang/en/passwords.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Password Reset Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are the default lines which match reasons
|
||||
| that are given by the password broker for a password update attempt
|
||||
| has failed, such as for an invalid token or invalid new password.
|
||||
|
|
||||
*/
|
||||
|
||||
'reset' => 'Your password has been reset!',
|
||||
'sent' => 'We have emailed your password reset link!',
|
||||
'throttled' => 'Please wait before retrying.',
|
||||
'token' => 'This password reset token is invalid.',
|
||||
'user' => "We can't find a user with that email address.",
|
||||
|
||||
];
|
155
resources/lang/en/validation.php
Normal file
155
resources/lang/en/validation.php
Normal file
@@ -0,0 +1,155 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Validation Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines contain the default error messages used by
|
||||
| the validator class. Some of these rules have multiple versions such
|
||||
| as the size rules. Feel free to tweak each of these messages here.
|
||||
|
|
||||
*/
|
||||
|
||||
'accepted' => 'The :attribute must be accepted.',
|
||||
'active_url' => 'The :attribute is not a valid URL.',
|
||||
'after' => 'The :attribute must be a date after :date.',
|
||||
'after_or_equal' => 'The :attribute must be a date after or equal to :date.',
|
||||
'alpha' => 'The :attribute must only contain letters.',
|
||||
'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.',
|
||||
'alpha_num' => 'The :attribute must only contain letters and numbers.',
|
||||
'array' => 'The :attribute must be an array.',
|
||||
'before' => 'The :attribute must be a date before :date.',
|
||||
'before_or_equal' => 'The :attribute must be a date before or equal to :date.',
|
||||
'between' => [
|
||||
'numeric' => 'The :attribute must be between :min and :max.',
|
||||
'file' => 'The :attribute must be between :min and :max kilobytes.',
|
||||
'string' => 'The :attribute must be between :min and :max characters.',
|
||||
'array' => 'The :attribute must have between :min and :max items.',
|
||||
],
|
||||
'boolean' => 'The :attribute field must be true or false.',
|
||||
'confirmed' => 'The :attribute confirmation does not match.',
|
||||
'date' => 'The :attribute is not a valid date.',
|
||||
'date_equals' => 'The :attribute must be a date equal to :date.',
|
||||
'date_format' => 'The :attribute does not match the format :format.',
|
||||
'different' => 'The :attribute and :other must be different.',
|
||||
'digits' => 'The :attribute must be :digits digits.',
|
||||
'digits_between' => 'The :attribute must be between :min and :max digits.',
|
||||
'dimensions' => 'The :attribute has invalid image dimensions.',
|
||||
'distinct' => 'The :attribute field has a duplicate value.',
|
||||
'email' => 'The :attribute must be a valid email address.',
|
||||
'ends_with' => 'The :attribute must end with one of the following: :values.',
|
||||
'exists' => 'The selected :attribute is invalid.',
|
||||
'file' => 'The :attribute must be a file.',
|
||||
'filled' => 'The :attribute field must have a value.',
|
||||
'gt' => [
|
||||
'numeric' => 'The :attribute must be greater than :value.',
|
||||
'file' => 'The :attribute must be greater than :value kilobytes.',
|
||||
'string' => 'The :attribute must be greater than :value characters.',
|
||||
'array' => 'The :attribute must have more than :value items.',
|
||||
],
|
||||
'gte' => [
|
||||
'numeric' => 'The :attribute must be greater than or equal :value.',
|
||||
'file' => 'The :attribute must be greater than or equal :value kilobytes.',
|
||||
'string' => 'The :attribute must be greater than or equal :value characters.',
|
||||
'array' => 'The :attribute must have :value items or more.',
|
||||
],
|
||||
'image' => 'The :attribute must be an image.',
|
||||
'in' => 'The selected :attribute is invalid.',
|
||||
'in_array' => 'The :attribute field does not exist in :other.',
|
||||
'integer' => 'The :attribute must be an integer.',
|
||||
'ip' => 'The :attribute must be a valid IP address.',
|
||||
'ipv4' => 'The :attribute must be a valid IPv4 address.',
|
||||
'ipv6' => 'The :attribute must be a valid IPv6 address.',
|
||||
'json' => 'The :attribute must be a valid JSON string.',
|
||||
'lt' => [
|
||||
'numeric' => 'The :attribute must be less than :value.',
|
||||
'file' => 'The :attribute must be less than :value kilobytes.',
|
||||
'string' => 'The :attribute must be less than :value characters.',
|
||||
'array' => 'The :attribute must have less than :value items.',
|
||||
],
|
||||
'lte' => [
|
||||
'numeric' => 'The :attribute must be less than or equal :value.',
|
||||
'file' => 'The :attribute must be less than or equal :value kilobytes.',
|
||||
'string' => 'The :attribute must be less than or equal :value characters.',
|
||||
'array' => 'The :attribute must not have more than :value items.',
|
||||
],
|
||||
'max' => [
|
||||
'numeric' => 'The :attribute must not be greater than :max.',
|
||||
'file' => 'The :attribute must not be greater than :max kilobytes.',
|
||||
'string' => 'The :attribute must not be greater than :max characters.',
|
||||
'array' => 'The :attribute must not have more than :max items.',
|
||||
],
|
||||
'mimes' => 'The :attribute must be a file of type: :values.',
|
||||
'mimetypes' => 'The :attribute must be a file of type: :values.',
|
||||
'min' => [
|
||||
'numeric' => 'The :attribute must be at least :min.',
|
||||
'file' => 'The :attribute must be at least :min kilobytes.',
|
||||
'string' => 'The :attribute must be at least :min characters.',
|
||||
'array' => 'The :attribute must have at least :min items.',
|
||||
],
|
||||
'multiple_of' => 'The :attribute must be a multiple of :value.',
|
||||
'not_in' => 'The selected :attribute is invalid.',
|
||||
'not_regex' => 'The :attribute format is invalid.',
|
||||
'numeric' => 'The :attribute must be a number.',
|
||||
'password' => 'The password is incorrect.',
|
||||
'present' => 'The :attribute field must be present.',
|
||||
'regex' => 'The :attribute format is invalid.',
|
||||
'required' => 'The :attribute field is required.',
|
||||
'required_if' => 'The :attribute field is required when :other is :value.',
|
||||
'required_unless' => 'The :attribute field is required unless :other is in :values.',
|
||||
'required_with' => 'The :attribute field is required when :values is present.',
|
||||
'required_with_all' => 'The :attribute field is required when :values are present.',
|
||||
'required_without' => 'The :attribute field is required when :values is not present.',
|
||||
'required_without_all' => 'The :attribute field is required when none of :values are present.',
|
||||
'prohibited' => 'The :attribute field is prohibited.',
|
||||
'prohibited_if' => 'The :attribute field is prohibited when :other is :value.',
|
||||
'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.',
|
||||
'same' => 'The :attribute and :other must match.',
|
||||
'size' => [
|
||||
'numeric' => 'The :attribute must be :size.',
|
||||
'file' => 'The :attribute must be :size kilobytes.',
|
||||
'string' => 'The :attribute must be :size characters.',
|
||||
'array' => 'The :attribute must contain :size items.',
|
||||
],
|
||||
'starts_with' => 'The :attribute must start with one of the following: :values.',
|
||||
'string' => 'The :attribute must be a string.',
|
||||
'timezone' => 'The :attribute must be a valid zone.',
|
||||
'unique' => 'The :attribute has already been taken.',
|
||||
'uploaded' => 'The :attribute failed to upload.',
|
||||
'url' => 'The :attribute format is invalid.',
|
||||
'uuid' => 'The :attribute must be a valid UUID.',
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Custom Validation Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Here you may specify custom validation messages for attributes using the
|
||||
| convention "attribute.rule" to name the lines. This makes it quick to
|
||||
| specify a specific custom language line for a given attribute rule.
|
||||
|
|
||||
*/
|
||||
|
||||
'custom' => [
|
||||
'attribute-name' => [
|
||||
'rule-name' => 'custom-message',
|
||||
],
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Custom Validation Attributes
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are used to swap our attribute placeholder
|
||||
| with something more reader friendly such as "E-Mail Address" instead
|
||||
| of "email". This simply helps us make our message more expressive.
|
||||
|
|
||||
*/
|
||||
|
||||
'attributes' => [],
|
||||
|
||||
];
|
18
resources/lang/vi/auth.php
Normal file
18
resources/lang/vi/auth.php
Normal file
@@ -0,0 +1,18 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Authentication Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are used during authentication for various
|
||||
| messages that we need to display to the user. You are free to modify
|
||||
| these language lines according to your application's requirements.
|
||||
|
|
||||
*/
|
||||
|
||||
return [
|
||||
'failed' => 'Thông tin tài khoản không tìm thấy trong hệ thống.',
|
||||
'password' => 'Mật khẩu không đúng.',
|
||||
'throttle' => 'Vượt quá số lần đăng nhập cho phép. Vui lòng thử lại sau :seconds giây.',
|
||||
];
|
17
resources/lang/vi/pagination.php
Normal file
17
resources/lang/vi/pagination.php
Normal file
@@ -0,0 +1,17 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Pagination Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are used by the paginator library to build
|
||||
| the simple pagination links. You are free to change them to anything
|
||||
| you want to customize your views to better match your application.
|
||||
|
|
||||
*/
|
||||
|
||||
return [
|
||||
'next' => 'Trang trước »',
|
||||
'previous' => '« Trang sau',
|
||||
];
|
20
resources/lang/vi/passwords.php
Normal file
20
resources/lang/vi/passwords.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Password Reset Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are the default lines which match reasons
|
||||
| that are given by the password broker for a password update attempt
|
||||
| has failed, such as for an invalid token or invalid new password.
|
||||
|
|
||||
*/
|
||||
|
||||
return [
|
||||
'reset' => 'Mật khẩu mới đã được cập nhật!',
|
||||
'sent' => 'Hướng dẫn cấp lại mật khẩu đã được gửi!',
|
||||
'throttled' => 'Vui lòng đợi trước khi thử lại.',
|
||||
'token' => 'Mã khôi phục mật khẩu không hợp lệ.',
|
||||
'user' => 'Không tìm thấy người dùng với địa chỉ email này.',
|
||||
];
|
164
resources/lang/vi/validation.php
Normal file
164
resources/lang/vi/validation.php
Normal file
@@ -0,0 +1,164 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Validation Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines contain the default error messages used by
|
||||
| the validator class. Some of these rules have multiple versions such
|
||||
| as the size rules. Feel free to tweak each of these messages here.
|
||||
|
|
||||
*/
|
||||
|
||||
return [
|
||||
'accepted' => 'Trường :attribute phải được chấp nhận.',
|
||||
'active_url' => 'Trường :attribute không phải là một URL hợp lệ.',
|
||||
'after' => 'Trường :attribute phải là một ngày sau ngày :date.',
|
||||
'after_or_equal' => 'Trường :attribute phải là thời gian bắt đầu sau hoặc đúng bằng :date.',
|
||||
'alpha' => 'Trường :attribute chỉ có thể chứa các chữ cái.',
|
||||
'alpha_dash' => 'Trường :attribute chỉ có thể chứa chữ cái, số và dấu gạch ngang.',
|
||||
'alpha_num' => 'Trường :attribute chỉ có thể chứa chữ cái và số.',
|
||||
'array' => 'Trường :attribute phải là dạng mảng.',
|
||||
'attached' => 'Trường :attribute đã được đính kèm.',
|
||||
'before' => 'Trường :attribute phải là một ngày trước ngày :date.',
|
||||
'before_or_equal' => 'Trường :attribute phải là thời gian bắt đầu trước hoặc đúng bằng :date.',
|
||||
'between' => [
|
||||
'array' => 'Trường :attribute phải có từ :min - :max phần tử.',
|
||||
'file' => 'Dung lượng tập tin trong trường :attribute phải từ :min - :max kB.',
|
||||
'numeric' => 'Trường :attribute phải nằm trong khoảng :min - :max.',
|
||||
'string' => 'Trường :attribute phải từ :min - :max kí tự.',
|
||||
],
|
||||
'boolean' => 'Trường :attribute phải là true hoặc false.',
|
||||
'confirmed' => 'Giá trị xác nhận trong trường :attribute không khớp.',
|
||||
'date' => 'Trường :attribute không phải là định dạng của ngày-tháng.',
|
||||
'date_equals' => 'Trường :attribute phải là một ngày bằng với :date.',
|
||||
'date_format' => 'Trường :attribute không giống với định dạng :format.',
|
||||
'different' => 'Trường :attribute và :other phải khác nhau.',
|
||||
'digits' => 'Độ dài của trường :attribute phải gồm :digits chữ số.',
|
||||
'digits_between' => 'Độ dài của trường :attribute phải nằm trong khoảng :min and :max chữ số.',
|
||||
'dimensions' => 'Trường :attribute có kích thước không hợp lệ.',
|
||||
'distinct' => 'Trường :attribute có giá trị trùng lặp.',
|
||||
'email' => 'Trường :attribute phải là một địa chỉ email hợp lệ.',
|
||||
'ends_with' => 'Trường :attribute phải kết thúc bằng một trong những giá trị sau: :values',
|
||||
'exists' => 'Giá trị đã chọn trong trường :attribute không hợp lệ.',
|
||||
'file' => 'Trường :attribute phải là một tệp tin.',
|
||||
'filled' => 'Trường :attribute không được bỏ trống.',
|
||||
'gt' => [
|
||||
'array' => 'Mảng :attribute phải có nhiều hơn :value phần tử.',
|
||||
'file' => 'Dung lượng trường :attribute phải lớn hơn :value kilobytes.',
|
||||
'numeric' => 'Giá trị trường :attribute phải lớn hơn :value.',
|
||||
'string' => 'Độ dài trường :attribute phải nhiều hơn :value kí tự.',
|
||||
],
|
||||
'gte' => [
|
||||
'array' => 'Mảng :attribute phải có ít nhất :value phần tử.',
|
||||
'file' => 'Dung lượng trường :attribute phải lớn hơn hoặc bằng :value kilobytes.',
|
||||
'numeric' => 'Giá trị trường :attribute phải lớn hơn hoặc bằng :value.',
|
||||
'string' => 'Độ dài trường :attribute phải lớn hơn hoặc bằng :value kí tự.',
|
||||
],
|
||||
'image' => 'Trường :attribute phải là định dạng hình ảnh.',
|
||||
'in' => 'Giá trị đã chọn trong trường :attribute không hợp lệ.',
|
||||
'in_array' => 'Trường :attribute phải thuộc tập cho phép: :other.',
|
||||
'integer' => 'Trường :attribute phải là một số nguyên.',
|
||||
'ip' => 'Trường :attribute phải là một địa chỉ IP.',
|
||||
'ipv4' => 'Trường :attribute phải là một địa chỉ IPv4.',
|
||||
'ipv6' => 'Trường :attribute phải là một địa chỉ IPv6.',
|
||||
'json' => 'Trường :attribute phải là một chuỗi JSON.',
|
||||
'lt' => [
|
||||
'array' => 'Mảng :attribute phải có ít hơn :value phần tử.',
|
||||
'file' => 'Dung lượng trường :attribute phải nhỏ hơn :value kilobytes.',
|
||||
'numeric' => 'Giá trị trường :attribute phải nhỏ hơn :value.',
|
||||
'string' => 'Độ dài trường :attribute phải nhỏ hơn :value kí tự.',
|
||||
],
|
||||
'lte' => [
|
||||
'array' => 'Mảng :attribute không được có nhiều hơn :value phần tử.',
|
||||
'file' => 'Dung lượng trường :attribute phải nhỏ hơn hoặc bằng :value kilobytes.',
|
||||
'numeric' => 'Giá trị trường :attribute phải nhỏ hơn hoặc bằng :value.',
|
||||
'string' => 'Độ dài trường :attribute phải nhỏ hơn hoặc bằng :value kí tự.',
|
||||
],
|
||||
'max' => [
|
||||
'array' => 'Trường :attribute không được lớn hơn :max phần tử.',
|
||||
'file' => 'Dung lượng tập tin trong trường :attribute không được lớn hơn :max kB.',
|
||||
'numeric' => 'Trường :attribute không được lớn hơn :max.',
|
||||
'string' => 'Trường :attribute không được lớn hơn :max kí tự.',
|
||||
],
|
||||
'mimes' => 'Trường :attribute phải là một tập tin có định dạng: :values.',
|
||||
'mimetypes' => 'Trường :attribute phải là một tập tin có định dạng: :values.',
|
||||
'min' => [
|
||||
'array' => 'Trường :attribute phải có tối thiểu :min phần tử.',
|
||||
'file' => 'Dung lượng tập tin trong trường :attribute phải tối thiểu :min kB.',
|
||||
'numeric' => 'Trường :attribute phải tối thiểu là :min.',
|
||||
'string' => 'Trường :attribute phải có tối thiểu :min kí tự.',
|
||||
],
|
||||
'multiple_of' => 'Trường :attribute phải là bội số của :value',
|
||||
'not_in' => 'Giá trị đã chọn trong trường :attribute không hợp lệ.',
|
||||
'not_regex' => 'Trường :attribute có định dạng không hợp lệ.',
|
||||
'numeric' => 'Trường :attribute phải là một số.',
|
||||
'password' => 'Mật khẩu không đúng.',
|
||||
'present' => 'Trường :attribute phải được cung cấp.',
|
||||
'prohibited' => 'Trường :attribute bị cấm.',
|
||||
'prohibited_if' => 'Trường :attribute bị cấm khi :other là :value.',
|
||||
'prohibited_unless' => 'Trường :attribute bị cấm trừ khi :other là một trong :values.',
|
||||
'regex' => 'Trường :attribute có định dạng không hợp lệ.',
|
||||
'relatable' => 'Trường :attribute không thể liên kết với tài nguyên này.',
|
||||
'required' => 'Trường :attribute không được bỏ trống.',
|
||||
'required_if' => 'Trường :attribute không được bỏ trống khi trường :other là :value.',
|
||||
'required_unless' => 'Trường :attribute không được bỏ trống trừ khi :other là :values.',
|
||||
'required_with' => 'Trường :attribute không được bỏ trống khi một trong :values có giá trị.',
|
||||
'required_with_all' => 'Trường :attribute không được bỏ trống khi tất cả :values có giá trị.',
|
||||
'required_without' => 'Trường :attribute không được bỏ trống khi một trong :values không có giá trị.',
|
||||
'required_without_all' => 'Trường :attribute không được bỏ trống khi tất cả :values không có giá trị.',
|
||||
'same' => 'Trường :attribute và :other phải giống nhau.',
|
||||
'size' => [
|
||||
'array' => 'Trường :attribute phải chứa :size phần tử.',
|
||||
'file' => 'Dung lượng tập tin trong trường :attribute phải bằng :size kB.',
|
||||
'numeric' => 'Trường :attribute phải bằng :size.',
|
||||
'string' => 'Trường :attribute phải chứa :size kí tự.',
|
||||
],
|
||||
'starts_with' => 'Trường :attribute phải được bắt đầu bằng một trong những giá trị sau: :values',
|
||||
'string' => 'Trường :attribute phải là một chuỗi kí tự.',
|
||||
'timezone' => 'Trường :attribute phải là một múi giờ hợp lệ.',
|
||||
'unique' => 'Trường :attribute đã có trong cơ sở dữ liệu.',
|
||||
'uploaded' => 'Trường :attribute tải lên thất bại.',
|
||||
'url' => 'Trường :attribute không giống với định dạng một URL.',
|
||||
'uuid' => 'Trường :attribute phải là một chuỗi UUID hợp lệ.',
|
||||
'custom' => [
|
||||
'attribute-name' => [
|
||||
'rule-name' => 'custom-message',
|
||||
],
|
||||
],
|
||||
'attributes' => [
|
||||
'address' => 'địa chỉ',
|
||||
'age' => 'tuổi',
|
||||
'available' => 'có sẵn',
|
||||
'body' => 'nội dung',
|
||||
'city' => 'thành phố',
|
||||
'content' => 'nội dung',
|
||||
'country' => 'quốc gia',
|
||||
'date' => 'ngày',
|
||||
'day' => 'ngày',
|
||||
'description' => 'mô tả',
|
||||
'email' => 'email',
|
||||
'excerpt' => 'trích dẫn',
|
||||
'first_name' => 'tên',
|
||||
'gender' => 'giới tính',
|
||||
'hour' => 'giờ',
|
||||
'last_name' => 'họ',
|
||||
'message' => 'lời nhắn',
|
||||
'minute' => 'phút',
|
||||
'mobile' => 'di động',
|
||||
'month' => 'tháng',
|
||||
'name' => 'tên',
|
||||
'password' => 'mật khẩu',
|
||||
'password_confirmation' => 'xác nhận mật khẩu',
|
||||
'phone' => 'số điện thoại',
|
||||
'second' => 'giây',
|
||||
'sex' => 'giới tính',
|
||||
'size' => 'kích thước',
|
||||
'subject' => 'tiêu đề',
|
||||
'time' => 'thời gian',
|
||||
'title' => 'tiêu đề',
|
||||
'username' => 'tên đăng nhập',
|
||||
'year' => 'năm',
|
||||
],
|
||||
];
|
19
resources/sass/_variables.scss
vendored
Normal file
19
resources/sass/_variables.scss
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
// Body
|
||||
$body-bg: #f8fafc;
|
||||
|
||||
// Typography
|
||||
$font-family-sans-serif: 'Nunito', sans-serif;
|
||||
$font-size-base: 0.9rem;
|
||||
$line-height-base: 1.6;
|
||||
|
||||
// Colors
|
||||
$blue: #3490dc;
|
||||
$indigo: #6574cd;
|
||||
$purple: #9561e2;
|
||||
$pink: #f66d9b;
|
||||
$red: #e3342f;
|
||||
$orange: #f6993f;
|
||||
$yellow: #ffed4a;
|
||||
$green: #38c172;
|
||||
$teal: #4dc0b5;
|
||||
$cyan: #6cb2eb;
|
8
resources/sass/app.scss
vendored
Normal file
8
resources/sass/app.scss
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
// Fonts
|
||||
@import url('https://fonts.googleapis.com/css?family=Nunito');
|
||||
|
||||
// Variables
|
||||
@import 'variables';
|
||||
|
||||
// Bootstrap
|
||||
@import '~bootstrap/scss/bootstrap';
|
@@ -0,0 +1,73 @@
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">{{ $titleModal }}</h5>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-1">
|
||||
<label class="control-label">SĐT: </label>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="kt-form__group--inline">
|
||||
<label>
|
||||
<select class="form-control sdt{{ isset($account) ? "update" : '' }}">
|
||||
@foreach($accountsMomo as $accountMomo)
|
||||
<option {{ isset($account) && $account->sdt == $accountMomo['sdt'] ? "selected" : '' }} value="{{$accountMomo['sdt']}}">{{$accountMomo['sdt']}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</label>
|
||||
{{-- <input class="form-control input-mocchoi-{{ $setting['id'] }}" value="{{ $setting['mocchoi'] }}"/>--}}
|
||||
</div>
|
||||
<div class="d-md-none kt-margin-b-10"></div>
|
||||
</div>
|
||||
<div class="col-sm-1">
|
||||
<label class="control-label">Trò chơi: </label>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="kt-form__group--inline">
|
||||
<label>
|
||||
<select class="form-control type{{ isset($account) ? "update" : '' }}">
|
||||
@foreach($types as $type => $label)
|
||||
<option value="{{$type}}" {{ isset($account) && $account->type == $type ? "selected" : '' }}>{{$label}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</label>
|
||||
{{-- <input class="form-control input-mocchoi-{{ $setting['id'] }}" value="{{ $setting['mocchoi'] }}"/>--}}
|
||||
</div>
|
||||
<div class="d-md-none kt-margin-b-10"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<div class="col-sm-1">
|
||||
<label class="control-label">Min: </label>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="kt-form__group--inline">
|
||||
<label>
|
||||
<input class="form-control min{{ isset($account) ? "update" : '' }}" value="{{ isset($account) ? $account->min : '' }}" placeholder="30000"/>
|
||||
</label>
|
||||
</div>
|
||||
<div class="d-md-none kt-margin-b-10"></div>
|
||||
</div>
|
||||
<div class="col-sm-1">
|
||||
<label class="control-label">Max: </label>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="kt-form__group--inline">
|
||||
<label>
|
||||
<input class="form-control max{{ isset($account) ? "update" : '' }}" value="{{ isset($account) ? $account->max : '' }}" placeholder="3000000"/>
|
||||
</label>
|
||||
{{-- <input class="form-control input-mocchoi-{{ $setting['id'] }}" value="{{ $setting['mocchoi'] }}"/>--}}
|
||||
</div>
|
||||
<div class="d-md-none kt-margin-b-10"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@if(isset($account))
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Đóng</button>
|
||||
<button type="button" class="btn btn-primary" onclick="UpdateAccountLevel({{ $account->id }})">Cập nhật</button>
|
||||
</div>
|
||||
@endif
|
205
resources/views/AdminPage/AccountLevelMoney/index.blade.php
Normal file
205
resources/views/AdminPage/AccountLevelMoney/index.blade.php
Normal file
@@ -0,0 +1,205 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
<!-- DataTables -->
|
||||
<link rel="stylesheet" href="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css">
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/jquery/dist/jquery.min.js"></script>
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net/js/jquery.dataTables.min.js"></script>
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>
|
||||
<script>
|
||||
$(function () {
|
||||
$('#my-table').DataTable({
|
||||
'paging': true,
|
||||
'lengthChange': true,
|
||||
'searching': true,
|
||||
'ordering': true,
|
||||
'info': true,
|
||||
'autoWidth': true
|
||||
})
|
||||
})
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
mark_offset($('.mark-offset'));
|
||||
});
|
||||
|
||||
function mark_offset(jquery_elements, attribute_name) {
|
||||
var offset = 1;
|
||||
jquery_elements.each(function () {
|
||||
if (attribute_name == undefined) {
|
||||
$(this).html(offset);
|
||||
} else {
|
||||
$(this).attr(attribute_name, offset);
|
||||
}
|
||||
|
||||
offset += 1;
|
||||
});
|
||||
}
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
function addAccountLevels() {
|
||||
let form = $('.form_create');
|
||||
let data = {};
|
||||
data.sdt = form.find('.sdt').first().val();
|
||||
data.type = form.find('.type').first().val();
|
||||
data.min = form.find('.min').first().val();
|
||||
data.max = form.find('.max').first().val();
|
||||
$.ajax({
|
||||
url: '{{route('admin_level_money.store')}}',
|
||||
type: "POST",
|
||||
data: data,
|
||||
success: function (data) {
|
||||
if (data.status == 2) {
|
||||
swal(data.message, "", 'error');
|
||||
} else {
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
|
||||
error: function () {
|
||||
swal("Vui lòng thử lại", "", 'errors');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function showEdit(id) {
|
||||
$.ajax({
|
||||
url: '{{route('admin_level_money.edit')}}',
|
||||
type: "POST",
|
||||
data: {'id': id},
|
||||
success: function (data) {
|
||||
if (data.status == 2) {
|
||||
swal(data.message, 'errors');
|
||||
} else {
|
||||
$('.form_update').html(data);
|
||||
}
|
||||
},
|
||||
|
||||
error: function () {
|
||||
swal("Vui lòng thử lại", 'errors');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function UpdateAccountLevel(id) {
|
||||
let form = $('.form_update');
|
||||
let data = {};
|
||||
data.id = id;
|
||||
data.sdt = form.find('.sdtupdate').first().val();
|
||||
data.type = form.find('.typeupdate').first().val();
|
||||
data.min = form.find('.minupdate').first().val();
|
||||
data.max = form.find('.maxupdate').first().val();
|
||||
$.ajax({
|
||||
url: '{{route('admin_level_money.update')}}',
|
||||
type: "POST",
|
||||
data: data,
|
||||
success: function (data) {
|
||||
if (data.status == 2) {
|
||||
swal(data.message, "", 'error');
|
||||
} else {
|
||||
swal("Cập nhật dữ liệu thành công", "", 'success');
|
||||
$('.row_' + id).replaceWith(data);
|
||||
mark_offset($('.mark-offset'));
|
||||
$("#modalUpdate .close").click()
|
||||
}
|
||||
},
|
||||
|
||||
error: function () {
|
||||
swal("Vui lòng thử lại", 'errors');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function deleteAccount(id) {
|
||||
$.ajax({
|
||||
url: '{{route('admin_level_money.delete')}}',
|
||||
type: "POST",
|
||||
data: {id: id},
|
||||
success: function (data) {
|
||||
if (data.status == 2) {
|
||||
swal(data.message, 'errors');
|
||||
} else {
|
||||
swal("Cập nhật dữ liệu thành công", 'success');
|
||||
$('.row_' + id).remove();
|
||||
mark_offset($('.mark-offset'));
|
||||
}
|
||||
},
|
||||
|
||||
error: function () {
|
||||
swal("Vui lòng thử lại", 'errors');
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="modal fade" id="modalCreate" tabindex="-1" aria-labelledby="modalCreateLabel" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content form_create">
|
||||
@include('AdminPage.AccountLevelMoney.form_template')
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Đóng</button>
|
||||
<button type="button" class="btn btn-primary" onclick="addAccountLevels()">Thêm</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal fade" id="modalUpdate" tabindex="-1" aria-labelledby="modalUpdateLabel" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content form_update">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box">
|
||||
<div class="box-header">
|
||||
<div style="float: left;">
|
||||
<h3 class="box-title">
|
||||
Quản lý hạn mức sđt
|
||||
</h3>
|
||||
</div>
|
||||
<div style="float: right;">
|
||||
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#modalCreate">
|
||||
Thêm
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
|
||||
<div class="table-responsive">
|
||||
<table id="my-table" class="table table-bordered table-hover">
|
||||
<thead>
|
||||
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>SĐT</th>
|
||||
<th>Trò chơi</th>
|
||||
<th>Min</th>
|
||||
<th>Max</th>
|
||||
<th>Trạng thái</th>
|
||||
<th>CHỨC NĂNG</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@foreach($accounts as $account)
|
||||
@include('AdminPage.AccountLevelMoney.row')
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- /.box-body -->
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
23
resources/views/AdminPage/AccountLevelMoney/row.blade.php
Normal file
23
resources/views/AdminPage/AccountLevelMoney/row.blade.php
Normal file
@@ -0,0 +1,23 @@
|
||||
<tr class="row_{{ $account['id'] }}">
|
||||
<td class="mark-offset"></td>
|
||||
<td>{{ $account['sdt'] }}</td>
|
||||
<td>{{ $account['game'] }}</td>
|
||||
<td>{{ number_format($account['min']) }}</td>
|
||||
<td>{{ number_format($account['max']) }}</td>
|
||||
<td> <button class="btn btn-{{ $account['class_status'] }} btn-sm">
|
||||
{{ $account['text_status'] }}
|
||||
</button></td>
|
||||
<td>
|
||||
<a href="javascript:;" onclick="deleteAccount({{ $account['id'] }})">
|
||||
<button class="btn btn-danger btn-sm">
|
||||
Xóa
|
||||
</button>
|
||||
</a>
|
||||
|
||||
<a href="javascript:;" onclick="showEdit({{ $account['id'] }})">
|
||||
<button class="btn btn-success btn-sm" data-toggle="modal" data-target="#modalUpdate">
|
||||
Chỉnh sửa
|
||||
</button>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
68
resources/views/AdminPage/addsdt.blade.php
Normal file
68
resources/views/AdminPage/addsdt.blade.php
Normal file
@@ -0,0 +1,68 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route('admin_quanlysdt_add_action') }}" method="POST">
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Số điện thoại:</label>
|
||||
<input class="form-control" name="sdt" value="">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Mật khẩu:</label>
|
||||
<input class="form-control" name="password" value="">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Token WEB2M:</label>
|
||||
<input class="form-control" name="token" value="">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Giới hạn:</label>
|
||||
<input class="form-control" name="gioihan" value="">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bảo trì:</label>
|
||||
<select class="form-control" name="status">
|
||||
<option value="1" selected>Không</option>
|
||||
<option value="2">Có</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Web API</label>
|
||||
<select class="form-control" name="webapi">
|
||||
<option value="1" selected>Web 2B</option>
|
||||
<option value="2">Thuê API</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Thêm</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
55
resources/views/AdminPage/configmessage.blade.php
Normal file
55
resources/views/AdminPage/configmessage.blade.php
Normal file
@@ -0,0 +1,55 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route('admin_config_message_action') }}" method="POST">
|
||||
@csrf
|
||||
<div class="row">
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Trả thưởng:</label>
|
||||
<input type="text" class="form-control" name="trathuong" value="{{ $GetConfigMessageMomo['0']['message'] }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Trả thưởng top tuần:</label>
|
||||
<input type="text" class="form-control" name="thuongtoptuan" value="{{ $GetConfigMessageMomo['1']['message'] }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Trả thưởng nổ hũ:</label>
|
||||
<input type="text" class="form-control" name="nohuu" value="{{ $GetConfigMessageMomo['2']['message'] }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Lưu lại</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
54
resources/views/AdminPage/doimatkhau.blade.php
Normal file
54
resources/views/AdminPage/doimatkhau.blade.php
Normal file
@@ -0,0 +1,54 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route('admin_doi_mat_khau_action') }}" method="POST">
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Mật khẩu hiện tại:</label>
|
||||
<input type="password" class="form-control" name="old_password">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Mật khẩu mới:</label>
|
||||
<input type="password" class="form-control" name="password">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Nhập lại mật khẩu mới:</label>
|
||||
<input type="password" class="form-control" name="password_confirmation">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Đổi mật khẩu</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
68
resources/views/AdminPage/editsdt.blade.php
Normal file
68
resources/views/AdminPage/editsdt.blade.php
Normal file
@@ -0,0 +1,68 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route('admin_quanlysdt_edit_action') }}" method="POST">
|
||||
@csrf
|
||||
<input type="hidden" name="id" value="{{ $GetAccountMomo->id }}">
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Số điện thoại:</label>
|
||||
<input class="form-control" name="sdt" value="{{ $GetAccountMomo->sdt }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Mật khẩu:</label>
|
||||
<input class="form-control" name="password" value="{{ $GetAccountMomo->password }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Token WEB2M:</label>
|
||||
<input class="form-control" name="token" value="{{ $GetAccountMomo->token }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Giới hạn:</label>
|
||||
<input class="form-control" name="gioihan" value="{{ $GetAccountMomo->gioihan }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bảo trì:</label>
|
||||
<select class="form-control" name="status">
|
||||
@if($GetAccountMomo->status == 1)
|
||||
<option value="1" selected>Không</option>
|
||||
<option value="2">Có</option>
|
||||
@else
|
||||
<option value="2" selected>Có</option>
|
||||
<option value="1">Không</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Lưu lại</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
209
resources/views/AdminPage/home.blade.php
Normal file
209
resources/views/AdminPage/home.blade.php
Normal file
@@ -0,0 +1,209 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-red"><i class="fas fa-award"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG DOANH THU</span>
|
||||
<span class="info-box-number">{{ number_format($doanhthu['tongdoanhthu']) }}<small> vnđ</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-red"><i class="fas fa-calendar-day"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">DOANH THU HÔM NAY</span>
|
||||
<span class="info-box-number">{{ number_format($doanhthu['doanhthuhomnay']) }}<small> vnđ</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-red"><i class="fas fa-calendar-day"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">DOANH THU THÁNG NẦY</span>
|
||||
<span class="info-box-number">{{ number_format($doanhthu['doanhthuthangnay']) }}<small> vnđ</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-red"><i class="fas fa-calendar-day"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">DOANH THU NĂM NAY</span>
|
||||
<span class="info-box-number">{{ number_format($doanhthu['doanhthunamnay']) }}<small> vnđ</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-aqua"><i class="far fa-hand-scissors"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG LƯỢT CHƠI CHẴN LẺ</span>
|
||||
<span class="info-box-number">{{ number_format($tongluotchoi['chanle']) }}<small> lượt</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-aqua"><i class="fas fa-dice"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG LƯỢT CHƠI TÀI XỈU</span>
|
||||
<span class="info-box-number">{{ number_format($tongluotchoi['taixiu']) }}<small> lượt</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-aqua"><i class="fas fa-hand-scissors"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG LƯỢT CHƠI CHẴN LẺ 2</span>
|
||||
<span class="info-box-number">{{ number_format($tongluotchoi['chanle2']) }}<small> lượt</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-aqua"><i class="fas fa-cubes"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG LƯỢT CHƠI GẤP 3</span>
|
||||
<span class="info-box-number">{{ number_format($tongluotchoi['gap3']) }}<small> lượt</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-aqua"><i class="fas fa-sort-numeric-up"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG LƯỢT CHƠI TỔNG 3 SỐ</span>
|
||||
<span class="info-box-number">{{ number_format($tongluotchoi['tong3so']) }}<small> lượt</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-aqua"><i class="fas fa-percentage"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG LƯỢT CHƠI TỔNG 1 PHẦN 3</span>
|
||||
<span class="info-box-number">{{ number_format($tongluotchoi['1phan3']) }}<small> lượt</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-yellow"><i class="fas fa-bomb"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG LƯỢT CHƠI NỔ HŨ</span>
|
||||
<span class="info-box-number">{{ number_format($tongluotchoi['nohu']) }}<small> lượt</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-yellow"><i class="fab fa-joomla"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TỔNG DOANH THU NỔ HŨ</span>
|
||||
<span class="info-box-number">{{ number_format($doanhthu['nohu']) }}<small> vnđ</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
<div class="col-md-3 col-sm-6 col-xs-12">
|
||||
<div class="info-box">
|
||||
<span class="info-box-icon bg-yellow"><i class="fas fa-wine-glass-alt"></i></span>
|
||||
|
||||
<div class="info-box-content">
|
||||
<span class="info-box-text">TIỀN TRONG HŨ</span>
|
||||
<span class="info-box-number">{{ number_format($thongtin['tientronghu']) }}<small> vnđ</small></span>
|
||||
</div>
|
||||
<!-- /.info-box-content -->
|
||||
</div>
|
||||
<!-- /.info-box -->
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
|
||||
</div>
|
||||
@endsection
|
67
resources/views/AdminPage/lichsubank.blade.php
Normal file
67
resources/views/AdminPage/lichsubank.blade.php
Normal file
@@ -0,0 +1,67 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
<!-- DataTables -->
|
||||
<link rel="stylesheet" href="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css">
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/jquery/dist/jquery.min.js"></script>
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net/js/jquery.dataTables.min.js"></script>
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>
|
||||
<script>
|
||||
$(function () {
|
||||
$('#my-table').DataTable({
|
||||
'paging' : true,
|
||||
'lengthChange': true,
|
||||
'searching' : true,
|
||||
'ordering' : false,
|
||||
'info' : true,
|
||||
'autoWidth' : true
|
||||
})
|
||||
})
|
||||
</script>
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<div class="box-header">
|
||||
<h3 class="box-title">
|
||||
{{ $GetSetting->game }}
|
||||
</h3>
|
||||
</div>
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
|
||||
<div class="table-responsive">
|
||||
<table id="my-table" class="table table-bordered table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>SĐT BANK</th>
|
||||
<th>SĐT NGƯỜI NHẬN</th>
|
||||
<th>SỐ TIỀN</th>
|
||||
<th>NỘI DUNG</th>
|
||||
<th>RESPONSE WEB2M</th>
|
||||
<th>TIME</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@foreach($getLichSuBank as $row)
|
||||
<tr>
|
||||
<td>{{ $row['sdtbank'] }}</td>
|
||||
<td>{{ $row['nguoinhan'] }}</td>
|
||||
<td>{{ number_format($row['sotien']) }}đ</td>
|
||||
<td>{{ $row['noidung'] }}</td>
|
||||
<td>{{ json_encode( json_decode($row['response']), JSON_UNESCAPED_UNICODE ) }}</td>
|
||||
<td>{{ $row['created_at'] }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- /.box-body -->
|
||||
</div>
|
||||
@endsection
|
87
resources/views/AdminPage/lichsuchoi.blade.php
Normal file
87
resources/views/AdminPage/lichsuchoi.blade.php
Normal file
@@ -0,0 +1,87 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
<!-- DataTables -->
|
||||
<link rel="stylesheet" href="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css">
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/jquery/dist/jquery.min.js"></script>
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net/js/jquery.dataTables.min.js"></script>
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>
|
||||
<script>
|
||||
$(function () {
|
||||
$('#my-table').DataTable({
|
||||
'paging' : true,
|
||||
'lengthChange': true,
|
||||
'searching' : true,
|
||||
'ordering' : false,
|
||||
'info' : true,
|
||||
'autoWidth' : true
|
||||
})
|
||||
})
|
||||
</script>
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<div class="box-header">
|
||||
<h3 class="box-title">
|
||||
{{ $GetSetting->game }}
|
||||
</h3>
|
||||
</div>
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
|
||||
<div class="table-responsive">
|
||||
<table id="my-table" class="table table-bordered table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>MOMO NHẬN</th>
|
||||
<th>SĐT</th>
|
||||
<th>MÃ GIAO DỊCH</th>
|
||||
<th>TIỀN CƯỢC</th>
|
||||
<th>TIỀN NHẬN</th>
|
||||
<th>NỘI DUNG</th>
|
||||
<th>KẾT QUẢ</th>
|
||||
<th>TRẠNG THÁI</th>
|
||||
<th>TIME</th>
|
||||
<th>THAO TÁC</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@foreach($GetLichSuChoiMomo as $row)
|
||||
<tr>
|
||||
<td>{{ $row['sdt_get'] }}</td>
|
||||
<td>{{ $row['sdt'] }}</td>
|
||||
<td>{{ $row['magiaodich'] }}</td>
|
||||
<td>{{ number_format($row['tiencuoc']) }}đ</td>
|
||||
<td>{{ number_format($row['tiennhan']) }}đ</td>
|
||||
<td>{{ $row['noidung'] }}</td>
|
||||
<td><button class="btn btn-{{ $row['kq']['class'] }} btn-sm" disabled>{{ $row['kq']['text'] }}</button></td>
|
||||
<td><button class="btn btn-{{ $row['tt']['class'] }} btn-sm" disabled>{{ $row['tt']['text'] }}</button></td>
|
||||
<td>{{ $row['created_at'] }}</td>
|
||||
<td>
|
||||
<form action="{{ route('admin.setstatus') }}" method="POST">
|
||||
@csrf
|
||||
<input type="hidden" name="id" value="{{ $row['id'] }}">
|
||||
<button class="btn btn-success" type="submit" name="status" value="3">Hoàn tất</button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- /.box-body -->
|
||||
</div>
|
||||
@endsection
|
96
resources/views/AdminPage/login.blade.php
Normal file
96
resources/views/AdminPage/login.blade.php
Normal file
@@ -0,0 +1,96 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="ID Thiên Ân">
|
||||
<title>{{ $GetSetting->title }} | {{ $GetSetting->namepage }}</title>
|
||||
<meta name="description" content="{{ $GetSetting->description }}" />
|
||||
<meta property="og:url" content="{{ url()->current() }}">
|
||||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{{ $GetSetting->description }}">
|
||||
<meta property="og:description" content="{{ $GetSetting->description }}">
|
||||
<link rel="shortcut icon" href="{{ asset('image/favicon.png') }}">
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
|
||||
<!-- Font Awesome -->
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
||||
<!-- Ionicons -->
|
||||
<link rel="stylesheet" href="{{ asset('/css/ionicons.min.css') }}">
|
||||
<!-- jvectormap -->
|
||||
<link rel="stylesheet" href="{{ asset('/css/jquery-jvectormap.css') }}">
|
||||
<!-- Theme style -->
|
||||
<link rel="stylesheet" href="{{ asset('/css/AdminLTE.min.css') }}">
|
||||
<!-- AdminLTE Skins. Choose a skin from the css/skins
|
||||
folder instead of downloading all of them to reduce the load. -->
|
||||
<link rel="stylesheet" href="{{ asset('/css/_all-skins.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('/css/blue.css') }}">
|
||||
|
||||
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
||||
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="{{ asset('/js/html5shiv.min.js') }}"></script>
|
||||
<script src="{{ asset('/js/respond.min.js') }}"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Google Font -->
|
||||
<link rel="stylesheet"
|
||||
href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic">
|
||||
</head>
|
||||
<body class="hold-transition skin-blue sidebar-mini">
|
||||
<div id="main" class="wrapper">
|
||||
<div class="login-box">
|
||||
<div class="login-logo">
|
||||
<a href="{{ route('login') }}" style="color: #fff;"><b>Admin</b>LTE</a>
|
||||
</div>
|
||||
<!-- /.login-logo -->
|
||||
<div class="login-box-body">
|
||||
<p class="login-box-msg">Đăng nhập để tiếp tục</p>
|
||||
|
||||
<form action="{{ route('admin_login_action') }}" method="post">
|
||||
@csrf
|
||||
<div class="form-group has-feedback">
|
||||
<input type="email" class="form-control" placeholder="Email" name="email">
|
||||
<span class="glyphicon glyphicon-envelope form-control-feedback"></span>
|
||||
</div>
|
||||
<div class="form-group has-feedback">
|
||||
<input type="password" class="form-control" placeholder="Mật khẩu" name="password">
|
||||
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-xs-8">
|
||||
<div class="checkbox icheck">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
<div class="col-xs-4">
|
||||
<button type="submit" class="btn btn-primary btn-block btn-flat">Đăng nhập</button>
|
||||
</div>
|
||||
<!-- /.col -->
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- /.social-auth-links -->
|
||||
|
||||
</div>
|
||||
<!-- /.login-box-body -->
|
||||
</div>
|
||||
</div>
|
||||
<!--/Footer-->
|
||||
<script src="{{ asset('/js/sweetalert.min.js') }}"></script>
|
||||
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
</body>
|
||||
</html>
|
107
resources/views/AdminPage/quanlysdt.blade.php
Normal file
107
resources/views/AdminPage/quanlysdt.blade.php
Normal file
@@ -0,0 +1,107 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
<!-- DataTables -->
|
||||
<link rel="stylesheet" href="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css">
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/jquery/dist/jquery.min.js"></script>
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net/js/jquery.dataTables.min.js"></script>
|
||||
<script src="https://adminlte.io/themes/AdminLTE/bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>
|
||||
<script>
|
||||
$(function () {
|
||||
$('#my-table').DataTable({
|
||||
'paging' : true,
|
||||
'lengthChange': true,
|
||||
'searching' : true,
|
||||
'ordering' : true,
|
||||
'info' : true,
|
||||
'autoWidth' : true
|
||||
})
|
||||
})
|
||||
</script>
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<div class="box-header">
|
||||
<div style="float: left;">
|
||||
<h3 class="box-title">
|
||||
{{ $GetSetting->desc }}
|
||||
</h3>
|
||||
</div>
|
||||
<div style="float: right;">
|
||||
<a href="{{ route('admin_quanlysdt_add') }}">
|
||||
<button class="btn btn-info">
|
||||
Thêm số điện thoại
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
|
||||
<div class="table-responsive">
|
||||
<table id="my-table" class="table table-bordered table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>TÊN</th>
|
||||
<th>SỐ TIỀN</th>
|
||||
<th>SĐT</th>
|
||||
<th>MẬT KHẨU</th>
|
||||
<th>TOKEN</th>
|
||||
<th>GIỚI HẠN</th>
|
||||
<th>STATUS</th>
|
||||
<th>Số lần bank hôm nay</th>
|
||||
<th>TIME</th>
|
||||
<th>CHỨC NĂNG</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($GetAccountMomo as $row)
|
||||
<tr>
|
||||
<td>{{ $row->id }}</td>
|
||||
<td>{{ $row->name }}</td>
|
||||
<td>{{ number_format($row->amount) }}đ</td>
|
||||
<td>{{ $row->sdt }}</td>
|
||||
<td>{{ $row->password }}</td>
|
||||
<td>{{ $row->token }}</td>
|
||||
<td>{{ number_format($row->gioihan) }}đ</td>
|
||||
<td>
|
||||
<button class="btn btn-{{ $row->status_class }} btn-sm">
|
||||
{{ $row->status_text }}
|
||||
</button>
|
||||
</td>
|
||||
<td>{{ number_format($row['countbank']) }} lần</td>
|
||||
<td>{{ $row->created_at }}</td>
|
||||
<td>
|
||||
<a href="{{ route('admin_quanlysdt_delete', $row->id) }}">
|
||||
<button class="btn btn-danger btn-sm">
|
||||
Xóa
|
||||
</button>
|
||||
</a>
|
||||
|
||||
<a href="{{ route('admin_quanlysdt_edit', $row->id) }}">
|
||||
<button class="btn btn-success btn-sm">
|
||||
Chỉnh sửa
|
||||
</button>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- /.box-body -->
|
||||
</div>
|
||||
@endsection
|
244
resources/views/AdminPage/setting.blade.php
Normal file
244
resources/views/AdminPage/setting.blade.php
Normal file
@@ -0,0 +1,244 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route('admin_setting_action') }}" method="POST">
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tên trang:</label>
|
||||
<input class="form-control" name="title" value="{{ $GetSetting->title }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Mô tả:</label>
|
||||
<input class="form-control" name="description" value="{{ $GetSetting->description }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Logo:</label>
|
||||
<input class="form-control" name="logo" value="{{ $GetSetting->logo }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Link video:</label>
|
||||
<input class="form-control" name="linkvideoyoutube" value="{{ $GetSetting->linkvideoyoutube }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Zalo:</label>
|
||||
<input class="form-control" name="zalo" value="{{ $GetSetting->zalo }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bảo trì:</label>
|
||||
<select class="form-control" name="baotri">
|
||||
@if($GetSetting->baotri == 0)
|
||||
<option value="0" selected>Không</option>
|
||||
<option value="1">Có</option>
|
||||
@else
|
||||
<option value="1" selected>Có</option>
|
||||
<option value="0">Không</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Màu header:</label>
|
||||
<input type="color" class="form-control" name="color_header" value="{{ $GetSetting->color_header }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Màu table footer:</label>
|
||||
<input type="color" class="form-control" name="color_footer" value="{{ $GetSetting->color_footer }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Màu table 1:</label>
|
||||
<input type="color" class="form-control" name="color_table" value="{{ $GetSetting->color_table }}">
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Màu table 2:</label>
|
||||
<input type="color" class="form-control" name="color_table2" value="{{ $GetSetting->color_table2 }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt game chẵn lẻ:</label>
|
||||
<select class="form-control" name="on_chanle">
|
||||
@if ($GetSetting->on_chanle == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt game tài xỉu:</label>
|
||||
<select class="form-control" name="on_taixiu">
|
||||
@if ($GetSetting->on_taixiu == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt game chẵn lẻ 2:</label>
|
||||
<select class="form-control" name="on_chanle2">
|
||||
@if ($GetSetting->on_chanle2 == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt game gấp 3:</label>
|
||||
<select class="form-control" name="on_gap3">
|
||||
@if ($GetSetting->on_gap3 == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt game tổng 3 số:</label>
|
||||
<select class="form-control" name="on_tong3so">
|
||||
@if ($GetSetting->on_tong3so == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt game 1 phần 3:</label>
|
||||
<select class="form-control" name="on_1phan3">
|
||||
@if ($GetSetting->on_1phan3 == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt game nổ hũ:</label>
|
||||
<select class="form-control" name="on_nohu">
|
||||
@if ($GetSetting->on_nohu == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt trả thưởng tuần:</label>
|
||||
<select class="form-control" name="on_trathuongtuan">
|
||||
@if ($GetSetting->on_trathuongtuan == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt điểm danh nhận quà:</label>
|
||||
<select class="form-control" name="on_diemdanh">
|
||||
@if ($GetSetting->on_diemdanh == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Bật / tắt điểm danh ngày:</label>
|
||||
<select class="form-control" name="on_diemdanh_ngay">
|
||||
@if ($GetSetting->on_diemdanh_ngay == 1)
|
||||
<option value="1" selected>On</option>
|
||||
<option value="2">Off</option>
|
||||
@else
|
||||
<option value="2" selected>Off</option>
|
||||
<option value="1">On</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<label>Script:</label>
|
||||
<textarea class="form-control" rows="10" name="script">{{
|
||||
$GetSetting->script
|
||||
}}</textarea>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Lưu lại</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
83
resources/views/AdminPage/setting_diemdanh.blade.php
Normal file
83
resources/views/AdminPage/setting_diemdanh.blade.php
Normal file
@@ -0,0 +1,83 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route($GetSetting->action) }}" method="POST">
|
||||
@csrf
|
||||
<input type="hidden" name="id" value="{{ $settingDiemdanh->id }}">
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tiền thắng min(VNĐ):</label>
|
||||
<input class="form-control" name="money_min" value="{{ $settingDiemdanh->money_min }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tiền thắng max(VNĐ):</label>
|
||||
<input class="form-control" name="money_max" value="{{ $settingDiemdanh->money_max }}">
|
||||
</div>
|
||||
<div class="col-12 col-md-12"><br/></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Thời gian bắt đầu:</label>
|
||||
<input class="form-control" name="start_time" value="{{ $settingDiemdanh->start_time }}">
|
||||
|
||||
</div>
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Thời gian kết thúc:</label>
|
||||
<input class="form-control" name="end_time" value="{{ $settingDiemdanh->end_time }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br/></div>
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tỉ lệ nguời chơi thắng(%):</label>
|
||||
<input class="form-control" name="win_rate" value="{{ $settingDiemdanh->win_rate }}">
|
||||
</div>
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Thời gian mỗi phiên điểm danh(giây): </label>
|
||||
<select class="form-control" name="time_each">
|
||||
@foreach($configTimeEach as $time)
|
||||
<option value="{{ $time }}" {{ $time == $settingDiemdanh->time_each ? "selected" : "" }}>{{ $time >= 86400 ? $time/86400 : ($time >= 3600 ? $time/3600 : $time/60) }} {{ $time >=86400 ? "ngày":($time >= 3600 ? "tiếng" : "phút") }}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
{{-- <input class="form-control" name="time_each" value="{{ $settingDiemdanh->time_each }}">--}}
|
||||
</div>
|
||||
<div class="col-12 col-md-12"><br/></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tỉ lệ bot vào chơi(%)</label>
|
||||
<input class="form-control" name="bot_rate" value="{{ $settingDiemdanh->bot_rate }}">
|
||||
</div>
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Cài SDT Win</label>
|
||||
<input class="form-control" name="setphonewin" value="{{ $settingDiemdanh->setphonewin }}">
|
||||
</div>
|
||||
<div class="col-12 col-md-12"><br/></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Lưu lại</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
233
resources/views/AdminPage/setting_diemdanh_ngay.blade.php
Normal file
233
resources/views/AdminPage/setting_diemdanh_ngay.blade.php
Normal file
@@ -0,0 +1,233 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<!-- Repeater Html Start -->
|
||||
<div class="form-group form-group-last row">
|
||||
<div class="col-sm-2 pull-right">
|
||||
<a href="javascript:;" data-repeater-create="" class="btn btn-info"
|
||||
onclick="addFormRepeater(this.parentElement.parentElement.parentElement);">
|
||||
<i class="fa fa-plus"></i> Thêm
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
@foreach($settings as $setting)
|
||||
<div class="form-group form-group-last form-template">
|
||||
<form enctype="multipart/form-data" role="form" method="POST" action=""
|
||||
class="kt-form form-setting" style="margin-top: 10px;">
|
||||
<div data-repeater-list="" class="col-sm-12">
|
||||
<div data-repeater-item class="form-group row align-items-center">
|
||||
<div class="col-sm-1">
|
||||
<label class="control-label"> Mốc chơi: </label>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="kt-form__group--inline">
|
||||
<input class="form-control input-mocchoi-{{ $setting['id'] }}" value="{{ $setting['mocchoi'] }}"/>
|
||||
</div>
|
||||
<div class="d-md-none kt-margin-b-10"></div>
|
||||
</div>
|
||||
<div class="col-sm-1">
|
||||
<label class="control-label"> Tiền nhận: </label>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="kt-form__group--inline">
|
||||
<div class="kt-form__control">
|
||||
<input type="text"
|
||||
value="{{ $setting['tiennhan'] }}"
|
||||
placeholder=""
|
||||
class="edit-template form-control input-tiennhan-{{ $setting['id'] }}"
|
||||
name="">
|
||||
<div class="show-template show-template-youtube edit-template" id=""></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-sm-none kt-margin-b-10"></div>
|
||||
</div>
|
||||
<div class="col-sm-1 text-right">
|
||||
<a href="javascript:;" data-repeater-delete=""
|
||||
class="btn btn-success"
|
||||
data-toggle="kt-tooltip"
|
||||
data-placement="top" data-skin="dark" title="" data-html="true"
|
||||
data-original-title="@lang('school/student_message.delete_file')"
|
||||
onclick="updateRepeater(this.parentElement.parentElement.parentElement.parentElement, {{ $setting['id'] }});">
|
||||
<i class="fa fa-save"></i>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-sm-1 text-right">
|
||||
<a href="javascript:;" data-repeater-delete=""
|
||||
class="btn btn-danger"
|
||||
data-toggle="kt-tooltip"
|
||||
data-placement="top" data-skin="dark" title="" data-html="true"
|
||||
data-original-title="@lang('school/student_message.delete_file')"
|
||||
onclick="removeRepeater(this.parentElement.parentElement.parentElement.parentElement, {{ $setting['id'] }});">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@endforeach
|
||||
<div class="form-group form-group-last list-attach-files kt-margin-b-5 kt-margin-t-5">
|
||||
</div>
|
||||
<div class="form-group form-group-last form-template-setting" style="display: none">
|
||||
<form enctype="multipart/form-data" role="form" method="POST" action=""
|
||||
class="kt-form form-template-setting" style="margin-top: 10px;">
|
||||
<div data-repeater-list="" class="col-sm-12">
|
||||
<div data-repeater-item class="form-group row align-items-center">
|
||||
<div class="col-sm-1">
|
||||
<label class="control-label"> Mốc chơi: </label>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="kt-form__group--inline">
|
||||
<input class="form-control input-mocchoi" placeholder="Mốc chơi"/>
|
||||
</div>
|
||||
<div class="d-md-none kt-margin-b-10"></div>
|
||||
</div>
|
||||
<div class="col-sm-1">
|
||||
<label class="control-label"> Tiền nhận: </label>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="kt-form__group--inline">
|
||||
<div class="kt-form__control">
|
||||
<input type="text"
|
||||
placeholder="Tiền nhận"
|
||||
class="edit-template form-control input-tiennhan"
|
||||
name="">
|
||||
<div class="show-template show-template-youtube edit-template" id=""></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-sm-none kt-margin-b-10"></div>
|
||||
</div>
|
||||
<div class="col-sm-1 text-right">
|
||||
<a href="javascript:;"
|
||||
class="btn btn-danger"
|
||||
data-toggle="kt-tooltip"
|
||||
data-placement="top" data-skin="dark" title="" data-html="true"
|
||||
data-original-title="@lang('school/student_message.delete_file')"
|
||||
onclick="removeRepeater(this.parentElement.parentElement.parentElement.parentElement);">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<!-- Repeater End -->
|
||||
<div class="col-lg-12" style="margin-top: 20px">
|
||||
<div class="text-center">
|
||||
<button class="btn btn-success" onclick="saveAttendanceDateSetting()">Lưu</i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@endsection
|
||||
<script>
|
||||
function addFormRepeater(form) {
|
||||
var template = $(form).find('.form-template-setting form').first();
|
||||
var list_attach_files = $(form).find('.list-attach-files').first();
|
||||
|
||||
template.clone().appendTo(list_attach_files);
|
||||
}
|
||||
|
||||
function removeRepeater(formElement, setting_id) {
|
||||
if (setting_id !== undefined) {
|
||||
$.ajax({
|
||||
url: "{{ route('admin_setting_attendance_date_delete') }}",
|
||||
type: "POST",
|
||||
data: {
|
||||
setting_id: setting_id,
|
||||
},
|
||||
success: function (data) {
|
||||
swal("Xóa thành công", 'success');
|
||||
},
|
||||
error: function () {
|
||||
swal("Vui lòng thử lại", 'errors');
|
||||
}
|
||||
});
|
||||
}
|
||||
$(formElement).remove();
|
||||
}
|
||||
|
||||
function updateRepeater(formElement, setting_id) {
|
||||
let tiennhan = $(formElement).find('.input-tiennhan-' + setting_id).first().val();
|
||||
let mocchoi = $(formElement).find('.input-mocchoi-' + setting_id).first().val();
|
||||
if (tiennhan.trim() == "" || mocchoi.trim() == "") {
|
||||
swal("Vui lòng điền đầy đủ thông tin");
|
||||
return false;
|
||||
}
|
||||
$.ajax({
|
||||
url: "{{ route('admin_setting_attendance_date_update') }}",
|
||||
type: "POST",
|
||||
data: {
|
||||
setting_id: setting_id,
|
||||
mocchoi: mocchoi,
|
||||
tiennhan: tiennhan,
|
||||
},
|
||||
success: function (data) {
|
||||
swal("Cập nhật thành công", 'success');
|
||||
},
|
||||
error: function () {
|
||||
swal("Vui lòng thử lại", 'errors');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function saveAttendanceDateSetting() {
|
||||
let listFormRepeater = $('.list-attach-files').find('.form-template-setting');
|
||||
listFormRepeater.each(function (index, form) {
|
||||
let tiennhan = $(form).find('.input-tiennhan').first().val();
|
||||
let mocchoi = $(form).find('.input-mocchoi').first().val();
|
||||
if (tiennhan.trim() == "" || mocchoi.trim() == "") {
|
||||
return true;
|
||||
}
|
||||
let finish = 0;
|
||||
if (index == listFormRepeater.length - 1) {
|
||||
finish = 1;
|
||||
}
|
||||
$.ajax({
|
||||
url: "{{ route('admin_setting_attendance_date_add') }}",
|
||||
type: "POST",
|
||||
data: {
|
||||
mocchoi: tiennhan,
|
||||
tiennhan: tiennhan,
|
||||
finish: finish,
|
||||
},
|
||||
success: function (data) {
|
||||
if (data.status == 2) {
|
||||
swal("Vui lòng thử lại", 'errors');
|
||||
}
|
||||
if (finish == 1) {
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
error: function () {
|
||||
swal("Vui lòng thử lại", 'errors');
|
||||
}
|
||||
});
|
||||
console.log(form)
|
||||
});
|
||||
}
|
||||
</script>
|
71
resources/views/AdminPage/setting_game.blade.php
Normal file
71
resources/views/AdminPage/setting_game.blade.php
Normal file
@@ -0,0 +1,71 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route($GetSetting->action) }}" method="POST">
|
||||
@csrf
|
||||
<input type="hidden" name="id" value="{{ $Setting_Game->id }}">
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Min:</label>
|
||||
<input class="form-control" name="min" value="{{ $Setting_Game->min }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Max:</label>
|
||||
<input class="form-control" name="max" value="{{ $Setting_Game->max }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Số điện thoại:</label>
|
||||
<div>
|
||||
@foreach($GetAccountMomo as $row)
|
||||
<div class="form-check">
|
||||
<label class="icheckbox_minimal-blue disabled">
|
||||
<input class="minimal" type="checkbox" value="{{ $row->id }}" name="sdt[]" @if ($row->active == 1) {{ 'checked' }} @endif>
|
||||
{{
|
||||
$row->sdt
|
||||
}}
|
||||
</label>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tỉ lệ:</label>
|
||||
<input class="form-control" name="tile" value="{{ $Setting_Game->tile }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Lưu lại</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
85
resources/views/AdminPage/setting_game2.blade.php
Normal file
85
resources/views/AdminPage/setting_game2.blade.php
Normal file
@@ -0,0 +1,85 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route($GetSetting->action) }}" method="POST">
|
||||
@csrf
|
||||
<input type="hidden" name="id" value="{{ $Setting_Game->id }}">
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Min:</label>
|
||||
<input class="form-control" name="min" value="{{ $Setting_Game->min }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Max:</label>
|
||||
<input class="form-control" name="max" value="{{ $Setting_Game->max }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Số điện thoại:</label>
|
||||
<div>
|
||||
@foreach($GetAccountMomo as $row)
|
||||
<div class="form-check">
|
||||
<label class="icheckbox_minimal-blue disabled">
|
||||
<input class="minimal" type="checkbox" value="{{ $row->id }}" name="sdt[]" @if ($row->active == 1) {{ 'checked' }} @endif>
|
||||
{{
|
||||
$row->sdt
|
||||
}}
|
||||
</label>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tỉ lệ 1:</label>
|
||||
<input class="form-control" name="tile1" value="{{ $Setting_Game->tile1 }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tỉ lệ 2:</label>
|
||||
<input class="form-control" name="tile2" value="{{ $Setting_Game->tile2 }}">
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tỉ lệ 3:</label>
|
||||
<input class="form-control" name="tile3" value="{{ $Setting_Game->tile3 }}">
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Lưu lại</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
55
resources/views/AdminPage/setting_game3.blade.php
Normal file
55
resources/views/AdminPage/setting_game3.blade.php
Normal file
@@ -0,0 +1,55 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route($GetSetting->action) }}" method="POST">
|
||||
@csrf
|
||||
<input type="hidden" name="id" value="{{ $Setting_Game->id }}">
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tiền cược:</label>
|
||||
<input class="form-control" name="tiencuoc" value="{{ $Setting_Game->tiencuoc }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Tiền mặc định:</label>
|
||||
<input class="form-control" name="tienmacdinh" value="{{ $Setting_Game->tienmacdinh }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-6">
|
||||
<label>% tiền cược vào hũ:</label>
|
||||
<input class="form-control" name="ptvaohu" value="{{ $Setting_Game->ptvaohu }}">
|
||||
</div>
|
||||
|
||||
<div class="col-12 col-md-12"><br /></div>
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Lưu lại</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
45
resources/views/AdminPage/setting_thuongtuan.blade.php
Normal file
45
resources/views/AdminPage/setting_thuongtuan.blade.php
Normal file
@@ -0,0 +1,45 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if ($errors->any())
|
||||
<script>
|
||||
swal("Thông báo", "{{ $errors->first() }}", "error");
|
||||
</script>
|
||||
@endif
|
||||
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<form action="{{ route('admin_setting_thuongtuan_action') }}" method="POST">
|
||||
@csrf
|
||||
<div class="row">
|
||||
|
||||
@foreach($GetSettingThuongTuan as $row)
|
||||
<div class="col-12 col-md-6">
|
||||
<label>Top {{ $row->top }}:</label>
|
||||
<input class="form-control" name="top_{{ $row->top }}" value="{{ $row->phanthuong }}">
|
||||
<br />
|
||||
</div>
|
||||
@endforeach
|
||||
|
||||
|
||||
<div class="col-12 col-md-12">
|
||||
<button class="btn btn-info" style="width: 100%;">Lưu lại</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
53
resources/views/AdminPage/update.blade.php
Normal file
53
resources/views/AdminPage/update.blade.php
Normal file
@@ -0,0 +1,53 @@
|
||||
@extends('layouts.admin')
|
||||
|
||||
@section('style')
|
||||
|
||||
@endsection
|
||||
|
||||
@section('script')
|
||||
@if (\Session::has('message'))
|
||||
<script>
|
||||
swal("Thông báo", "{{ \Session::get('message') }}", "{{ \Session::get('status') }}");
|
||||
</script>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="box">
|
||||
<!-- /.box-header -->
|
||||
<div class="box-body">
|
||||
<p># Thông tin phiên bản:</p>
|
||||
<ul>
|
||||
<li>Phiên bản hiện tại: {{ $emyinfo[0] }}</li>
|
||||
<li>Phiên bản mới nhất: {{ $eserverinfo[0] }}</li>
|
||||
</ul>
|
||||
<hr />
|
||||
<p># Nội dung bản cập nhật: </p>
|
||||
<ul>
|
||||
@php
|
||||
$dem = 0;
|
||||
@endphp
|
||||
@if($emyinfo[0] == $eserverinfo[0])
|
||||
<li>Phiên bản hiện tại đã là mới nhất</li>
|
||||
@else
|
||||
@foreach ($eserverinfo as $r)
|
||||
@if($dem > 0)
|
||||
<li>
|
||||
{{ $r }}
|
||||
<br />
|
||||
</li>
|
||||
@endif
|
||||
|
||||
@php
|
||||
$dem ++;
|
||||
@endphp
|
||||
@endforeach
|
||||
@endif
|
||||
</ul>
|
||||
<hr />
|
||||
<a href="{{ route('admin.update') }}">
|
||||
<button class="btn btn-info">Cập nhật phiên bản mới</button>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
1311
resources/views/HomePage/home.blade.php
Normal file
1311
resources/views/HomePage/home.blade.php
Normal file
File diff suppressed because it is too large
Load Diff
3
resources/views/HomePage/phone_user_attendance.blade.php
Normal file
3
resources/views/HomePage/phone_user_attendance.blade.php
Normal file
@@ -0,0 +1,3 @@
|
||||
@foreach($phoneUsersAttendance as $index => $phone)
|
||||
{{ $phone }},
|
||||
@endforeach
|
158
resources/views/HomePage/script.blade.php
Normal file
158
resources/views/HomePage/script.blade.php
Normal file
@@ -0,0 +1,158 @@
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
$.ajaxSetup({
|
||||
headers: {
|
||||
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
|
||||
}
|
||||
});
|
||||
@if($canAttendance)
|
||||
timelast = Number('{{ $secondRealTime }}');
|
||||
setTimeSessionAttendance();
|
||||
@endif
|
||||
setTimeout(getDataAfterLoad(), 3000)
|
||||
|
||||
let timeRefreshTable = Number({{TIME_REFRESH_LOAD_DATA_AFTER}});
|
||||
setInterval(function () {
|
||||
if (timeRefreshTable > 0) {
|
||||
timeRefreshTable--;
|
||||
} else {
|
||||
getDataAfterLoad()
|
||||
timeRefreshTable = {{TIME_REFRESH_LOAD_DATA_AFTER}};
|
||||
}
|
||||
$(".coundown-time").html(timeRefreshTable);
|
||||
}, 1000);
|
||||
|
||||
});
|
||||
|
||||
function getDataAfterLoad() {
|
||||
$.ajax({
|
||||
url: '{{route('home.get_data_after_load')}}',
|
||||
type: 'post',
|
||||
success: function (data) {
|
||||
if (data.status == 2) {
|
||||
console.log("Lỗi")
|
||||
} else {
|
||||
$('#lich_su_thang').html(data.lich_su_thang)
|
||||
$('#table_trang_thai_momo').html(data.view_table_trang_thai_momo)
|
||||
$('#view_top_tuan').html(data.view_top_tuan)
|
||||
var countViews = Number({{ count(Config::get('constant.list_game')) }});
|
||||
for (let i = 1; i <= countViews; i++) {
|
||||
$('#table_account_' + i).html(data.view_table_account[i])
|
||||
}
|
||||
$('.setting_tiencuoc_1').html(data.tiencuoc_1)
|
||||
$('.setting_tiencuoc_2').html(data.tiencuoc_2)
|
||||
$('.setting_tiencuoc_3').html(data.tiencuoc_3)
|
||||
$('.setting_tiencuoc_4_1').html(data.tiencuoc_4_1)
|
||||
$('.setting_tiencuoc_4_2').html(data.tiencuoc_4_2)
|
||||
$('.setting_tiencuoc_4_3').html(data.tiencuoc_4_3)
|
||||
$('.setting_tiencuoc_5_1').html(data.tiencuoc_5_1)
|
||||
$('.setting_tiencuoc_5_2').html(data.tiencuoc_5_2)
|
||||
$('.setting_tiencuoc_5_3').html(data.tiencuoc_5_3)
|
||||
$('.setting_tiencuoc_6').html(data.tiencuoc_6)
|
||||
}
|
||||
},
|
||||
|
||||
error: function () {
|
||||
console.log("Lỗi")
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function socket(timelast) {
|
||||
$.ajax({
|
||||
url: '{{ route('home.attendance.realtime') }}',
|
||||
data: {time: timelast},
|
||||
type: 'post',
|
||||
success: function (data) {
|
||||
let result = JSON.parse(data);
|
||||
$('.diemdanh_users').html(result.count_users_attendance);
|
||||
$('#diemdanh_last').html(result.phone_win_latest);
|
||||
$('#diemdanh_id').html(result.session_current_code);
|
||||
$('#muc_users').html(result.phones_attendance);
|
||||
$('#mayman_log').html(result.view_list_session_past);
|
||||
$("#diemdanh_tongtien").html(result.total_amount);
|
||||
if (timelast % 10 == 0) {
|
||||
$("#thoigian_head").html(result.second_realtime);
|
||||
delete window.timelast;
|
||||
window.timelast = Number(result.second_realtime);
|
||||
}
|
||||
}, error: function (data) {
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
function setTimeSessionAttendance() {
|
||||
setInterval(function () {
|
||||
if (timelast > 0) {
|
||||
timelast--;
|
||||
} else {
|
||||
timelast = Number('{{ $timeEach }}');
|
||||
}
|
||||
$("#thoigian_head").html(timelast);
|
||||
$("#diemdanh_thoigian").html(timelast);
|
||||
if (timelast % 2 == 0)
|
||||
socket(timelast);
|
||||
}, 1000);
|
||||
}
|
||||
|
||||
function getRndInteger(min, max) {
|
||||
return Math.floor(Math.random() * (max - min)) + min;
|
||||
}
|
||||
|
||||
function diemdanh() {
|
||||
var num1 = getRndInteger(1, 9);
|
||||
var num2 = getRndInteger(1, 9);
|
||||
let phone = $("#phonevalue").val();
|
||||
var floatRegex = /^((\d+(\.\d *)?)|((\d*\.)?\d+))$/;
|
||||
var phoneRegex = /\(?([0-9]{3})\)?([ .-]?)([0-9]{3})\2([0-9]{4})/;
|
||||
if (phone.length <= 9 || !floatRegex.test(phone) || !phoneRegex.test(phone)) {
|
||||
alert(`Khong hop le`);
|
||||
return false;
|
||||
}
|
||||
|
||||
let person = prompt("Mã xác minh " + num1 + "+" + num2 + "= ?:", "");
|
||||
if (person == null || person != (num1 + num2)) {
|
||||
alert(`Bạn đã nhập sai phép tính. Vui lòng thử lại`);
|
||||
return false;
|
||||
}
|
||||
$.ajax({
|
||||
url: '{{ route('home.attendance_session') }}',
|
||||
data: {phone: $("#phonevalue").val(), captcha: person},
|
||||
type: 'POST',
|
||||
success: function (data) {
|
||||
if (data.status == 2) {
|
||||
alert(data.message);
|
||||
} else {
|
||||
alert("Điểm danh thành công!");
|
||||
num1 = Number('{{ random_int(1,9) }}');
|
||||
num2 = Number('{{ random_int(1,9) }}');
|
||||
$("#phonevalue").val(``)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function diemDanhNgay(button) {
|
||||
|
||||
let phone = $('#PhoneDiemDanhNgay').first().val();
|
||||
if (phone.trim() == "") {
|
||||
alert("Bạn chưa nhập số điện thoại")
|
||||
return false;
|
||||
}
|
||||
$(button).attr('disabled', true);
|
||||
$(button).css('cursor', "not-allowed");
|
||||
$.ajax({
|
||||
url: '{{ route('home.attendance_date') }}',
|
||||
data: {phone: phone},
|
||||
type: 'POST',
|
||||
success: function (data) {
|
||||
alert(data.message)
|
||||
$("#PhoneDiemDanhNgay").val(``);
|
||||
$(button).removeAttr('disabled');
|
||||
$(button).css('cursor', "auto");
|
||||
}
|
||||
})
|
||||
}
|
||||
</script>
|
90
resources/views/HomePage/tab_attendance_session.blade.php
Normal file
90
resources/views/HomePage/tab_attendance_session.blade.php
Normal file
@@ -0,0 +1,90 @@
|
||||
@if(isset($checkCanAttendance) && $checkCanAttendance)
|
||||
<div class="row collapse show" id="diemDanhCard" style="">
|
||||
<div class="col-lg-12">
|
||||
<div class="body">
|
||||
<div class="text-center">
|
||||
|
||||
<font color="blue"><big><b>Điểm Danh Nhận Quà Miễn Phí</b></big></font>
|
||||
<br>
|
||||
<small><i class="fa fa-info-circle" aria-hidden="true"></i> Mã quà: <font
|
||||
color="orange"><b id="diemdanh_id">{{ $attendanceSessionCurrent->id }}</b></font></small><br>
|
||||
|
||||
<small><i class="fa fa-usd" aria-hidden="true"></i> Giá trị: <font color="Maroon">
|
||||
<!--<b id="">{{ number_format($setting['money_min']) }} ~ {{ number_format($setting['money_max']) }}</b> vnđ</font></small><br>-->
|
||||
<b id="">{{ number_format($setting['money_min']) }} ~ {{ number_format('100000') }}</b> vnđ</font></small><br>
|
||||
|
||||
<small><i class="fa fa-user" aria-hidden="true"></i>: <font color="333366"><b
|
||||
id="diemdanh_users" class="diemdanh_users">{{ $countUsersAttendance }}</b> người</font></small><br>
|
||||
|
||||
<small><i class="fa fa-clock-o" aria-hidden="true"></i> Quay thưởng sau: <font
|
||||
color="660000"><b
|
||||
id="diemdanh_thoigian">{{ $canAttendance ? $secondRealTime : $timeEach }}</b>
|
||||
giây</font></small><br>
|
||||
<small><i class="fa fa-star" aria-hidden="true"></i> Thắng phiên trước: <font
|
||||
color="333300"><b id="diemdanh_last">{{$phoneWinLatest}}</b></font></small><br>
|
||||
<small><i class="fa fa-bandcamp" aria-hidden="true"></i> Tổng tiền đã trao: <font color="blue"><b
|
||||
id="diemdanh_tongtien">{{ number_format($totalAmount) }}</b> VNĐ</font></small>
|
||||
<div class="form-group occard" id="occard">
|
||||
<label for="exampleInputEmail1">Số điện thoại:</label>
|
||||
<input type="text" class="form-control" id="phonevalue" aria-describedby="emailHelp"
|
||||
placeholder="03837755">
|
||||
<small id="emailHelp" class="form-text text-muted">Nhập số điện thoại của bạn để
|
||||
điểm danh.</small>
|
||||
<br>
|
||||
<button class="btn btn-success" data-toggle="modal" data-target="#modalDiemDanh"
|
||||
onclick="diemdanh()">Điểm danh
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<button class="btn btn-info"
|
||||
onclick="$('#muc_huongdan').show();$('#muc_users').hide();$('#muc_lichsu').hide();">
|
||||
Cách chơi
|
||||
</button>
|
||||
<button class="btn btn-dark" data-toggle="modal"
|
||||
onclick="$('#muc_huongdan').hide();$('#muc_users').hide();$('#muc_lichsu').show();">
|
||||
Lịch sử
|
||||
</button>
|
||||
<button class="btn btn-danger"
|
||||
onclick="$('#muc_huongdan').hide();$('#muc_users').show();$('#muc_lichsu').hide();">
|
||||
Danh sách
|
||||
</button>
|
||||
</div>
|
||||
<?php
|
||||
$time = (int) $timeEach;
|
||||
$startTime = $setting['start_time'];
|
||||
$endTime = $setting['end_time'];
|
||||
?>
|
||||
<div class="occho" id="muc_huongdan">
|
||||
- Mỗi phiên quà các bạn có {{ $time >= 86400 ? $time/86400 : ($time >= 3600 ? $time/3600 : $time/60) }} {{ $time >=86400 ? "ngày":($time >= 3600 ? "tiếng" : "phút") }} để điểm danh. <br>
|
||||
- Số điện thoại điểm danh phải chơi AUTOCLTXMOMO.CLUB ít nhất 1 lần trong ngày. Không giới hạn số
|
||||
lần điểm danh trong ngày. <br>
|
||||
- Khi hết thời gian, người may mắn sẽ nhận được số tiền của phiên đó. <br>
|
||||
- Game chỉ hoạt động từ <b>{{ \Carbon\Carbon::parse($startTime)->format('H:i') }} sáng</b> đến {{ \Carbon\Carbon::parse($endTime)->format('H:i') }} tối
|
||||
</div>
|
||||
|
||||
<div class="occho" id="muc_lichsu" style="display:none;">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-bordered table-hover text-center">
|
||||
<thead>
|
||||
<tr role="row" class="bg-primary">
|
||||
<th class="text-center text-white">Mã</th>
|
||||
<th class="text-center text-white">SDT</th>
|
||||
<th class="text-center text-white">Mã GD</th>
|
||||
<th class="text-center text-white">VND</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="mayman_log">
|
||||
@include('HomePage.table_sessions_attendance')
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="occho" id="muc_users" style="display:none;">
|
||||
@foreach($usersAttendance as $userAttendance)
|
||||
{{ $userAttendance->getPhone() }},
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
42
resources/views/HomePage/table_account_1.blade.php
Normal file
42
resources/views/HomePage/table_account_1.blade.php
Normal file
@@ -0,0 +1,42 @@
|
||||
@php
|
||||
$dem = 0;
|
||||
$accountMomosGroupTypesChanLe = $accountMomosGroupTypesAllGames;
|
||||
if (!is_null($accountMomosGroupTypes->get(CONFIG_CHAN_LE)) && count($accountMomosGroupTypes->get(CONFIG_CHAN_LE)) > 0){
|
||||
$accountMomosGroupTypesChanLe = $accountMomosGroupTypes->get(CONFIG_CHAN_LE)->merge($accountMomosGroupTypesChanLe);
|
||||
}
|
||||
@endphp
|
||||
@if(count($accountMomosGroupTypesChanLe) > 0)
|
||||
@foreach($accountMomosGroupTypesChanLe->take(5) as $rowChanLe)
|
||||
<tr>
|
||||
<td id="p_27"><b id="ducnghia_27"
|
||||
style="position: relative;">{{ $rowChanLe['sdt'] }} <span
|
||||
class="label label-success text-uppercase"
|
||||
onclick="coppy('{{ $rowChanLe['sdt'] }}')"><i
|
||||
class="fa fa-clipboard" aria-hidden="true"></i></span>
|
||||
<b style="position: absolute;
|
||||
top: 15px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
font-size: 7.5px;">
|
||||
<font color="{{ $rowChanLe['color_tiencuoc'] }}">{{ number_format($rowChanLe['sumTienCuoc']) }}</font>/
|
||||
<font color="6861b1">30M</font>|
|
||||
<font color="{{ $rowChanLe['color_countbank'] }}">{{ $rowChanLe['countbank'] }}</font>/
|
||||
<font color="6861b1">{{ CONFIG_LIMIT_LAN_BANK }}</font>
|
||||
</b>
|
||||
</b>
|
||||
</td>
|
||||
<td style="font-weight: bold;color: {{$rowChanLe['color_min']}}">{{ number_format($rowChanLe['min']) }} VNĐ</td>
|
||||
<td style="font-weight: bold;color: {{$rowChanLe['color_min']}}">{{ number_format($rowChanLe['max']) }} VNĐ</td>
|
||||
|
||||
@php
|
||||
$dem ++;
|
||||
@endphp
|
||||
</tr>
|
||||
@endforeach
|
||||
@else{
|
||||
<td colspan="3" ><Mark>WEB ĐANG HẾT SỐ ĐỢI ADMIN THÊM SỐ !</Mark> </td>
|
||||
}
|
||||
@endif
|
39
resources/views/HomePage/table_account_2.blade.php
Normal file
39
resources/views/HomePage/table_account_2.blade.php
Normal file
@@ -0,0 +1,39 @@
|
||||
@php
|
||||
$dem = 0;
|
||||
$accountMomosGroupTypesTaiXiu = $accountMomosGroupTypesAllGames;
|
||||
if (!is_null($accountMomosGroupTypes->get(CONFIG_TAI_XIU)) && count($accountMomosGroupTypes->get(CONFIG_TAI_XIU)) > 0){
|
||||
$accountMomosGroupTypesTaiXiu = $accountMomosGroupTypes->get(CONFIG_TAI_XIU)->merge($accountMomosGroupTypesTaiXiu);
|
||||
}
|
||||
@endphp
|
||||
@if(count($accountMomosGroupTypesTaiXiu) > 0)
|
||||
@foreach($accountMomosGroupTypesTaiXiu->take(5) as $rowTaiXiu)
|
||||
<tr>
|
||||
<td id="p_27"><b id="ducnghia_27"
|
||||
style="position: relative;">{{ $rowTaiXiu['sdt'] }} <span
|
||||
class="label label-success text-uppercase"
|
||||
onclick="coppy('{{ $rowTaiXiu['sdt'] }}')"><i
|
||||
class="fa fa-clipboard" aria-hidden="true"></i></span>
|
||||
<b style="position: absolute;
|
||||
top: 15px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
font-size: 7.5px;">
|
||||
<font color="{{ $rowTaiXiu['color_tiencuoc'] }}">{{ number_format($rowTaiXiu['sumTienCuoc']) }}</font>/
|
||||
<font color="6861b1">30M</font>|
|
||||
<font color="{{ $rowTaiXiu['color_countbank'] }}">{{ $rowTaiXiu['countbank'] }}</font>/
|
||||
<font color="6861b1">{{ CONFIG_LIMIT_LAN_BANK }}</font>
|
||||
</b>
|
||||
</b>
|
||||
</td>
|
||||
<td>{{ number_format($rowTaiXiu['min']) }} VNĐ</td>
|
||||
<td> {{ number_format($rowTaiXiu['max']) }} VNĐ</td>
|
||||
|
||||
@php
|
||||
$dem ++;
|
||||
@endphp
|
||||
</tr>
|
||||
@endforeach
|
||||
@endif
|
39
resources/views/HomePage/table_account_3.blade.php
Normal file
39
resources/views/HomePage/table_account_3.blade.php
Normal file
@@ -0,0 +1,39 @@
|
||||
@php
|
||||
$dem = 0;
|
||||
$accountMomosGroupTypesTaiXiu2 = $accountMomosGroupTypesAllGames;
|
||||
if (!is_null($accountMomosGroupTypes->get(CONFIG_CHAN_LE_TAI_XIU_2)) && count($accountMomosGroupTypes->get(CONFIG_CHAN_LE_TAI_XIU_2)) > 0){
|
||||
$accountMomosGroupTypesTaiXiu2 = $accountMomosGroupTypes->get(CONFIG_CHAN_LE_TAI_XIU_2)->merge($accountMomosGroupTypesTaiXiu2);
|
||||
}
|
||||
@endphp
|
||||
@if(count($accountMomosGroupTypesTaiXiu2) > 0)
|
||||
@foreach($accountMomosGroupTypesTaiXiu2->take(5) as $rowChanLe2)
|
||||
<tr>
|
||||
<td id="p_28"><b id="ducnghia_28"
|
||||
style="position: relative;">{{ $rowChanLe2['sdt'] }} <span
|
||||
class="label label-success text-uppercase"
|
||||
onclick="coppy('{{ $rowChanLe2['sdt'] }}')"><i
|
||||
class="fa fa-clipboard" aria-hidden="true"></i></span>
|
||||
<b style="position: absolute;
|
||||
top: 15px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
font-size: 7.5px;">
|
||||
<font color="{{ $rowChanLe2['color_tiencuoc'] }}">{{ number_format($rowChanLe2['sumTienCuoc']) }}</font>/
|
||||
<font color="6861b1">30M</font>|
|
||||
<font color="{{ $rowChanLe2['color_countbank'] }}">{{ $rowChanLe2['countbank'] }}</font>/
|
||||
<font color="6861b1">{{ CONFIG_LIMIT_LAN_BANK }}</font>
|
||||
</b>
|
||||
</b>
|
||||
</td>
|
||||
<td>{{ number_format($rowChanLe2['min']) }} VNĐ</td>
|
||||
<td>{{ number_format($rowChanLe2['max']) }} VNĐ</td>
|
||||
|
||||
</tr>
|
||||
@php
|
||||
$dem ++;
|
||||
@endphp
|
||||
@endforeach
|
||||
@endif
|
39
resources/views/HomePage/table_account_4.blade.php
Normal file
39
resources/views/HomePage/table_account_4.blade.php
Normal file
@@ -0,0 +1,39 @@
|
||||
@php
|
||||
$dem = 0;
|
||||
$accountMomosGroupTypesGap3 = $accountMomosGroupTypesAllGames;
|
||||
if (!is_null($accountMomosGroupTypes->get(CONFIG_GAP_3)) && count($accountMomosGroupTypes->get(CONFIG_GAP_3)) > 0){
|
||||
$accountMomosGroupTypesGap3 = $accountMomosGroupTypes->get(CONFIG_GAP_3)->merge($accountMomosGroupTypesGap3);
|
||||
}
|
||||
@endphp
|
||||
@if(count($accountMomosGroupTypesGap3) > 0)
|
||||
@foreach($accountMomosGroupTypesGap3->take(5) as $rowGap3)
|
||||
<tr>
|
||||
<td id="p_27"><b id="ducnghia_27"
|
||||
style="position: relative;">{{ $rowGap3['sdt'] }} <span
|
||||
class="label label-success text-uppercase"
|
||||
onclick="coppy('{{ $rowGap3['sdt'] }}')"><i
|
||||
class="fa fa-clipboard" aria-hidden="true"></i></span>
|
||||
<b style="position: absolute;
|
||||
top: 15px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
font-size: 7.5px;">
|
||||
<font color="{{ $rowGap3['color_tiencuoc'] }}">{{ number_format($rowGap3['sumTienCuoc']) }}</font>/
|
||||
<font color="6861b1">30M</font>|
|
||||
<font color="{{ $rowGap3['color_countbank'] }}">{{ $rowGap3['countbank'] }}</font>/
|
||||
<font color="6861b1">{{ CONFIG_LIMIT_LAN_BANK }}</font>
|
||||
</b>
|
||||
</b>
|
||||
</td>
|
||||
<td>{{ number_format($rowGap3['min']) }} VNĐ</td>
|
||||
<td>{{ number_format($rowGap3['max']) }} VNĐ</td>
|
||||
|
||||
</tr>
|
||||
@php
|
||||
$dem ++;
|
||||
@endphp
|
||||
@endforeach
|
||||
@endif
|
39
resources/views/HomePage/table_account_5.blade.php
Normal file
39
resources/views/HomePage/table_account_5.blade.php
Normal file
@@ -0,0 +1,39 @@
|
||||
@php
|
||||
$dem = 0;
|
||||
$accountMomosGroupTypesTong3So = $accountMomosGroupTypesAllGames;
|
||||
if (!is_null($accountMomosGroupTypes->get(CONFIG_TONG_3_SO)) && count($accountMomosGroupTypes->get(CONFIG_TONG_3_SO)) > 0){
|
||||
$accountMomosGroupTypesTong3So = $accountMomosGroupTypes->get(CONFIG_TONG_3_SO)->merge($accountMomosGroupTypesTong3So);
|
||||
}
|
||||
@endphp
|
||||
@if(count($accountMomosGroupTypesTong3So) > 0)
|
||||
@foreach($accountMomosGroupTypesTong3So->take(5) as $rowTong3So)
|
||||
<tr>
|
||||
<td id="p_27"><b id="ducnghia_27"
|
||||
style="position: relative;">{{ $rowTong3So['sdt'] }} <span
|
||||
class="label label-success text-uppercase"
|
||||
onclick="coppy('{{ $rowTong3So['sdt'] }}')"><i
|
||||
class="fa fa-clipboard" aria-hidden="true"></i></span>
|
||||
<b style="position: absolute;
|
||||
top: 15px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
font-size: 7.5px;">
|
||||
<font color="{{ $rowTong3So['color_tiencuoc'] }}">{{ number_format($rowTong3So['sumTienCuoc']) }}</font>/
|
||||
<font color="6861b1">30M</font>|
|
||||
<font color="{{ $rowTong3So['color_countbank'] }}">{{ $rowTong3So['countbank'] }}</font>/
|
||||
<font color="6861b1">{{ CONFIG_LIMIT_LAN_BANK }}</font>
|
||||
</b>
|
||||
</b>
|
||||
</td>
|
||||
<td>{{ number_format($rowTong3So['min']) }} VNĐ</td>
|
||||
<td> {{ number_format($rowTong3So['max']) }} VNĐ</td>
|
||||
|
||||
</tr>
|
||||
@php
|
||||
$dem ++;
|
||||
@endphp
|
||||
@endforeach
|
||||
@endif
|
39
resources/views/HomePage/table_account_6.blade.php
Normal file
39
resources/views/HomePage/table_account_6.blade.php
Normal file
@@ -0,0 +1,39 @@
|
||||
@php
|
||||
$dem = 0;
|
||||
$accountMomosGroupTypes1Phan3 = $accountMomosGroupTypesAllGames;
|
||||
if (!is_null($accountMomosGroupTypes->get(CONFIG_1_PHAN_3)) && count($accountMomosGroupTypes->get(CONFIG_1_PHAN_3)) > 0){
|
||||
$accountMomosGroupTypes1Phan3 = $accountMomosGroupTypes->get(CONFIG_1_PHAN_3)->merge($accountMomosGroupTypes1Phan3);
|
||||
}
|
||||
@endphp
|
||||
@if(count($accountMomosGroupTypes1Phan3) > 0)
|
||||
@foreach($accountMomosGroupTypes1Phan3->take(5) as $row1Phan3)
|
||||
<tr>
|
||||
<td id="p_27"><b id="ducnghia_27"
|
||||
style="position: relative;">{{ $row1Phan3['sdt'] }} <span
|
||||
class="label label-success text-uppercase"
|
||||
onclick="coppy('{{ $row1Phan3['sdt'] }}')"><i
|
||||
class="fa fa-clipboard" aria-hidden="true"></i></span>
|
||||
<b style="position: absolute;
|
||||
top: 15px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
font-size: 7.5px;">
|
||||
<font color="{{ $row1Phan3['color_tiencuoc'] }}">{{ number_format($row1Phan3['sumTienCuoc']) }}</font>/
|
||||
<font color="6861b1">30M</font>|
|
||||
<font color="{{ $row1Phan3['color_countbank'] }}">{{ $row1Phan3['countbank'] }}</font>/
|
||||
<font color="6861b1">{{ CONFIG_LIMIT_LAN_BANK }}</font>
|
||||
</b>
|
||||
</b>
|
||||
</td>
|
||||
<td>{{ number_format($row1Phan3['min']) }} VNĐ</td>
|
||||
<td> {{ number_format($row1Phan3['max']) }} VNĐ</td>
|
||||
|
||||
</tr>
|
||||
@php
|
||||
$dem ++;
|
||||
@endphp
|
||||
@endforeach
|
||||
@endif
|
39
resources/views/HomePage/table_account_7.blade.php
Normal file
39
resources/views/HomePage/table_account_7.blade.php
Normal file
@@ -0,0 +1,39 @@
|
||||
@php
|
||||
$dem = 0;
|
||||
$accountMomosGroupTypesLo = $accountMomosGroupTypesAllGames;
|
||||
if (!is_null($accountMomosGroupTypes->get(CONFIG_GAME_LO)) && count($accountMomosGroupTypes->get(CONFIG_GAME_LO)) > 0){
|
||||
$accountMomosGroupTypesLo = $accountMomosGroupTypes->get(CONFIG_GAME_LO)->merge($accountMomosGroupTypesLo);
|
||||
}
|
||||
@endphp
|
||||
@if(count($accountMomosGroupTypesLo) > 0)
|
||||
@foreach($accountMomosGroupTypesLo->take(5) as $rowLo)
|
||||
<tr>
|
||||
<td id="p_27"><b id="ducnghia_27"
|
||||
style="position: relative;">{{ $rowLo['sdt'] }} <span
|
||||
class="label label-success text-uppercase"
|
||||
onclick="coppy('{{ $rowLo['sdt'] }}')"><i
|
||||
class="fa fa-clipboard" aria-hidden="true"></i></span>
|
||||
<b style="position: absolute;
|
||||
top: 15px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
font-size: 7.5px;">
|
||||
<font color="{{ $rowLo['color_tiencuoc'] }}">{{ number_format($rowLo['sumTienCuoc']) }}</font>/
|
||||
<font color="6861b1">30M</font>|
|
||||
<font color="{{ $rowLo['color_countbank'] }}">{{ $rowLo['countbank'] }}</font>/
|
||||
<font color="6861b1">{{ CONFIG_LIMIT_LAN_BANK }}</font>
|
||||
</b>
|
||||
</b>
|
||||
</td>
|
||||
<td>{{ number_format($rowLo['min']) }} VNĐ</td>
|
||||
<td> {{ number_format($rowLo['max']) }} VNĐ</td>
|
||||
|
||||
</tr>
|
||||
@php
|
||||
$dem ++;
|
||||
@endphp
|
||||
@endforeach
|
||||
@endif
|
42
resources/views/HomePage/table_lich_su_thang.blade.php
Normal file
42
resources/views/HomePage/table_lich_su_thang.blade.php
Normal file
@@ -0,0 +1,42 @@
|
||||
<center class="" style="width: 76%;
|
||||
margin: auto;">
|
||||
<marquee><b>
|
||||
@foreach($ListLichSuChoiMomo as $row)
|
||||
Chúc mừng <font color="blue">{{ $row->sdt_hidden }}</font> thắng lớn nhận <font
|
||||
color="green">{{ number_format($row->tiennhan) }}
|
||||
</font> VNĐ. |
|
||||
@endforeach
|
||||
.</b></marquee>
|
||||
</center>
|
||||
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped table-bordered table-hover text-center">
|
||||
<thead>
|
||||
<tr role="row" class="bg-primary2">
|
||||
<th class="text-center text-white">Thời gian</th>
|
||||
<th class="text-center text-white">Số điện thoại</th>
|
||||
<th class="text-center text-white">Tiền cược</th>
|
||||
<th class="text-center text-white">Tiền nhận</th>
|
||||
<th class="text-center text-white">Trò chơi</th>
|
||||
<th class="text-center text-white">Nội dung</th>
|
||||
<th class="text-center text-white">trạng thái</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody role="alert" aria-live="polite" aria-relevant="all" class="">
|
||||
@foreach($ListLichSuChoiMomo as $row)
|
||||
<tr>
|
||||
<td>{{ $row->created_at }}</td>
|
||||
<td>{{ $row->sdt_hidden }}</td>
|
||||
<td>{{ number_format($row->tiencuoc) }}</td>
|
||||
<td>{{ number_format($row->tiennhan) }}</td>
|
||||
<td>{{ $row->trochoi }}</td>
|
||||
<td>{{ strtoupper ($row->noidung) }}</td>
|
||||
<td><span class="label label-success text-uppercase">
|
||||
Thắng
|
||||
</span></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
@@ -0,0 +1,8 @@
|
||||
@foreach($listSessionsPast as $sessionPast)
|
||||
<tr>
|
||||
<td><small>{{ $sessionPast->id }}</small></td>
|
||||
<td>{{ $sessionPast->getPhone() }}</td>
|
||||
<td><small>{{ $sessionPast->bill_code }}</small></td>
|
||||
<td>{{ number_format($sessionPast->amount) }} VNĐ</td>
|
||||
</tr>
|
||||
@endforeach
|
16
resources/views/HomePage/table_trang_thai_momo.blade.php
Normal file
16
resources/views/HomePage/table_trang_thai_momo.blade.php
Normal file
@@ -0,0 +1,16 @@
|
||||
@if(count($ListAccounts) > 0)
|
||||
@foreach($ListAccounts as $ListAccount)
|
||||
<tr>
|
||||
<td id="p_27"><b id="ducnghia_27">{{ $ListAccount['sdt'] }}</b> <span
|
||||
class="label label-{{ $ListAccount['status_class'] }} text-uppercase"
|
||||
onclick="coppy('{{ $ListAccount['sdt'] }}')"><i
|
||||
class="fa fa-clipboard" aria-hidden="true"></i></span></td>
|
||||
<td>
|
||||
<span class="label label-{{ $ListAccount['status_class'] }} text-uppercase">{{ $ListAccount['status_text'] }}</span>
|
||||
</td>
|
||||
{{-- <td>{{ \Carbon\Carbon::parse($ListAccount['created_at'])->format('d-m-Y H:o') }}</td>--}}
|
||||
<!--<td> {{ number_format($ListAccount['sumTienCuoc']) }} / {{ number_format($ListAccount['gioihan']) }} VNĐ</td>-->
|
||||
<td>{{ number_format($ListAccount['countbank']) }}/{{ CONFIG_LIMIT_LAN_BANK }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
@endif
|
23
resources/views/HomePage/top_tuan.blade.php
Normal file
23
resources/views/HomePage/top_tuan.blade.php
Normal file
@@ -0,0 +1,23 @@
|
||||
@php
|
||||
$dem = 0;
|
||||
@endphp
|
||||
@foreach($UserTopTuan as $phone => $tiencuoc)
|
||||
@php
|
||||
$dem++;
|
||||
@endphp
|
||||
<div class="row">
|
||||
<div class="col-xs-1">
|
||||
<span class="fa-stack">
|
||||
<span class="fa fa-circle fa-stack-2x text-danger"></span>
|
||||
<strong class="fa-stack-1x text-white">{{ $dem }}</strong>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-2">
|
||||
<span class="label label-success">{{ $phone }}</span>
|
||||
</div>
|
||||
<div class="col-xs-5 text-right">
|
||||
<span class="label label-danger">{{ number_format($tiencuoc) }} vnđ</span>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
85
resources/views/layouts/admin.blade.php
Normal file
85
resources/views/layouts/admin.blade.php
Normal file
@@ -0,0 +1,85 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="ID Thiên Ân">
|
||||
<title>{{ $GetSetting->title }} | {{ $GetSetting->namepage }}</title>
|
||||
<meta name="description" content="{{ $GetSetting->description }}" />
|
||||
<meta property="og:url" content="{{ url()->current() }}">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}" />
|
||||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{{ $GetSetting->description }}">
|
||||
<meta property="og:description" content="{{ $GetSetting->description }}">
|
||||
<link rel="shortcut icon" href="{{ asset('image/favicon.png') }}">
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
|
||||
<!-- Font Awesome -->
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
||||
<!-- Ionicons -->
|
||||
<link rel="stylesheet" href="{{ asset('/css/ionicons.min.css') }}">
|
||||
<!-- jvectormap -->
|
||||
<link rel="stylesheet" href="{{ asset('/css/jquery-jvectormap.css') }}">
|
||||
<!-- Theme style -->
|
||||
<link rel="stylesheet" href="{{ asset('/css/AdminLTE.min.css') }}">
|
||||
<!-- AdminLTE Skins. Choose a skin from the css/skins
|
||||
folder instead of downloading all of them to reduce the load. -->
|
||||
<link rel="stylesheet" href="{{ asset('/css/_all-skins.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('/css/blue.css') }}">
|
||||
|
||||
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
||||
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="{{ asset('/js/html5shiv.min.js') }}"></script>
|
||||
<script src="{{ asset('/js/respond.min.js') }}"></script>
|
||||
<![endif]-->
|
||||
|
||||
<!-- Google Font -->
|
||||
<link rel="stylesheet"
|
||||
href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic">
|
||||
@yield('style')
|
||||
</head>
|
||||
<body class="hold-transition skin-blue sidebar-mini">
|
||||
<div id="main" class="wrapper">
|
||||
@include('layouts.elements.header_admin')
|
||||
@yield('content')
|
||||
@include('layouts.elements.footer_admin')
|
||||
</div>
|
||||
|
||||
<!--/Footer-->
|
||||
<!-- jQuery 3 -->
|
||||
<script src="{{ asset('/js/jquery.min.js') }}"></script>
|
||||
<!-- Bootstrap 3.3.7 -->
|
||||
<script src="{{ asset('/js/bootstrap.min.js') }}"></script>
|
||||
<!-- FastClick -->
|
||||
<script src="{{ asset('/js/fastclick.js') }}"></script>
|
||||
<!-- AdminLTE App -->
|
||||
<script src="{{ asset('/js/adminlte.min.js') }}"></script>
|
||||
<!-- Sparkline -->
|
||||
<script src="{{ asset('/js/jquery.sparkline.min.js') }}"></script>
|
||||
<!-- jvectormap -->
|
||||
<script src="{{ asset('/js/jquery-jvectormap-1.2.2.min.js') }}"></script>
|
||||
<script src="{{ asset('/js/jquery-jvectormap-world-mill-en.js') }}"></script>
|
||||
<!-- SlimScroll -->
|
||||
<script src="{{ asset('/js/jquery.slimscroll.min.js') }}"></script>
|
||||
<!-- ChartJS -->
|
||||
<script src="{{ asset('/js/Chart.js') }}"></script>
|
||||
<!-- AdminLTE dashboard demo (This is only for demo purposes) -->
|
||||
<script src="{{ asset('/js/dashboard2.js') }}"></script>
|
||||
<!-- AdminLTE for demo purposes -->
|
||||
<script src="{{ asset('/js/demo.js') }}"></script>
|
||||
<script src="{{ asset('/js/sweetalert.min.js') }}"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
$.ajaxSetup({
|
||||
headers: {
|
||||
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
|
||||
'Cache-Control': 'no-cache',
|
||||
'Pragma': 'no-cache'
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@yield('script')
|
||||
</body>
|
||||
</html>
|
99
resources/views/layouts/app.blade.php
Normal file
99
resources/views/layouts/app.blade.php
Normal file
@@ -0,0 +1,99 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="CMSNT.CO">
|
||||
<title>{{ $GetSetting->title }} | {{ $GetSetting->namepage }}</title>
|
||||
<meta name="description" content="{{ $GetSetting->description }}" />
|
||||
<meta property="og:url" content="{{ url()->current() }}">
|
||||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{{ $GetSetting->description }}">
|
||||
<meta property="og:description" content="{{ $GetSetting->description }}">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}" />
|
||||
<link rel="shortcut icon" href="{{ asset('image/favicon.png') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/bootstrap.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/style.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/jquery-ui-1.9.2.custom.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/font-awesome.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/custom.1.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/bootstrap-social.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/animate.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/katex.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/monokai-sublime.min.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/quill.snow.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/quill.bubble.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/bootstrap-datetimepicker.min.css') }}"/>
|
||||
<link rel="stylesheet" type="text/css" href="{{ asset('css/sweetalert2.min.css') }}">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
||||
<style>
|
||||
.navbar {
|
||||
position: relative;
|
||||
z-index: 501;
|
||||
min-height: 60px;
|
||||
margin-bottom: 0;
|
||||
background-color: {{ $GetSetting->color_header }};
|
||||
border: none;
|
||||
border-top-right-radius: 0;
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
|
||||
.panel-primary>.panel-heading {
|
||||
color: #fff;
|
||||
background-color: {{ $GetSetting->color_table }};
|
||||
border-color: {{ $GetSetting->color_table }};
|
||||
}
|
||||
|
||||
.panel-primary {
|
||||
border-color: {{ $GetSetting->color_table }};
|
||||
}
|
||||
|
||||
.panel-primary>.panel-heading+.panel-collapse .panel-body {
|
||||
border-top-color: {{ $GetSetting->color_table }};
|
||||
}
|
||||
|
||||
.panel-primary>.panel-footer+.panel-collapse .panel-body {
|
||||
border-bottom-color: {{ $GetSetting->color_table }};
|
||||
}
|
||||
|
||||
.footer {
|
||||
padding: 20px 0;
|
||||
margin-top: 2em;
|
||||
font-size: 12px;
|
||||
background: {{ $GetSetting->color_footer }};
|
||||
border-top: 7px solid {{ $GetSetting->color_footer }};
|
||||
}
|
||||
|
||||
.bg-primary2 {
|
||||
color: #fff ;
|
||||
background-color: {{ $GetSetting->color_table2 }} !important;
|
||||
}
|
||||
|
||||
</style>
|
||||
@yield('style')
|
||||
</head>
|
||||
<body>
|
||||
@include("layouts.elements.header")
|
||||
<div id="main">
|
||||
@yield('content')
|
||||
</div>
|
||||
@include("layouts.elements.footer")
|
||||
<!--/Footer-->
|
||||
<script src="{{ asset('js/jquery-1.10.1.min.js') }}"></script>
|
||||
<script src="{{ asset('js/jquery-3.6.0.min.js') }}"></script>
|
||||
<script src="{{ asset('js/jquery-ui-1.9.2.custom.min.js') }}"></script>
|
||||
<script src="{{ asset('js/jquery.validate.min.js') }}"></script>
|
||||
<script src="{{ asset('js/bootstrap.min.js') }}"></script>
|
||||
<script src="{{ asset('js/bootbox.js') }}"></script>
|
||||
<script src="{{ asset('js/tip.js') }}"></script>
|
||||
<script src="{{ asset('js/alert.js?abcd') }}"></script>
|
||||
<script src="{{ asset('js/moment.min.js') }}"></script>
|
||||
<script src="{{ asset('js/bootstrap-datetimepicker.min.js') }}"></script>
|
||||
<script src="{{ asset('js/sweetalert2.all.min.js') }}"></script>
|
||||
@yield('script')
|
||||
{!! $GetSetting->script !!}
|
||||
</body>
|
||||
</html>
|
13
resources/views/layouts/elements/footer.blade.php
Normal file
13
resources/views/layouts/elements/footer.blade.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-6 text-white">
|
||||
Copyright {{ date("Y") }} © XỔ SỐ MOMO| <a style="color: #fff; text-decoration: none;" href="http://xosomomo.com/" target="_bank"><b>UY TÍN SỐ 1 - CÓ CHƠI CÓ TRÚNG</b></a>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</footer>
|
2
resources/views/layouts/elements/footer_admin.blade.php
Normal file
2
resources/views/layouts/elements/footer_admin.blade.php
Normal file
@@ -0,0 +1,2 @@
|
||||
</section>
|
||||
</div>
|
18
resources/views/layouts/elements/header.blade.php
Normal file
18
resources/views/layouts/elements/header.blade.php
Normal file
@@ -0,0 +1,18 @@
|
||||
<div class="navbar">
|
||||
<div class="container">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<i class="fa fa-bars"></i>
|
||||
</button>
|
||||
<a class="navbar-brand navbar-brand-image" href="/">
|
||||
<div class="hidden-xs">
|
||||
<!--<img src="{{ $GetSetting->logo }}" style="margin-top:10px; margin-bottom:10px; width: 210px;" alt="clmm.me Logo">-->
|
||||
</div>
|
||||
<div class="visible-xs">
|
||||
<!--<img src="{{ $GetSetting->logo }}" style="margin-top:10px;margin:13px; width: 210px;" alt="clmm.me Logo">-->
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
217
resources/views/layouts/elements/header_admin.blade.php
Normal file
217
resources/views/layouts/elements/header_admin.blade.php
Normal file
@@ -0,0 +1,217 @@
|
||||
<style>
|
||||
.iconx {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.iconx:hover {
|
||||
color: #fff;
|
||||
height: 47px;
|
||||
}
|
||||
.sidebar-menu li>a{
|
||||
color: #b8c7ce !important;
|
||||
}
|
||||
.sidebar-menu>li.header{
|
||||
color: #4b646f;
|
||||
background: #1a2226;;
|
||||
}
|
||||
|
||||
.main-sidebar a, .main-header a, .main-sidebar .info{
|
||||
color: #fff;
|
||||
}
|
||||
.main-sidebar .form-control {
|
||||
color: #666;
|
||||
border-top-left-radius: 2px;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
border-bottom-left-radius: 2px;
|
||||
box-shadow: none;
|
||||
background-color: #374850;
|
||||
border: 1px solid transparent;
|
||||
height: 35px;
|
||||
}
|
||||
.main-sidebar .btn {
|
||||
color: #999;
|
||||
border-top-left-radius: 0;
|
||||
border-top-right-radius: 2px;
|
||||
border-bottom-right-radius: 2px;
|
||||
border-bottom-left-radius: 0;
|
||||
box-shadow: none;
|
||||
background-color: #374850;
|
||||
border: 1px solid transparent;
|
||||
height: 35px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<header class="main-header">
|
||||
|
||||
<!-- Logo -->
|
||||
<a href="{{ route('admin_home') }}" class="logo">
|
||||
<!-- mini logo for sidebar mini 50x50 pixels -->
|
||||
<span class="logo-mini"><b>A</b>LT</span>
|
||||
<!-- logo for regular state and mobile devices -->
|
||||
<span class="logo-lg"><b>Admin</b>LTE</span>
|
||||
</a>
|
||||
|
||||
<!-- Header Navbar: style can be found in header.less -->
|
||||
<nav class="navbar navbar-static-top">
|
||||
<!-- Sidebar toggle button-->
|
||||
<a href="#" data-toggle="push-menu" role="button" style="color: #fff;">
|
||||
<i class="fas fa-bars btn btn-lg iconx" style="margin-top: 3px;"></i>
|
||||
</a>
|
||||
<!-- Navbar Right Menu -->
|
||||
<div class="navbar-custom-menu">
|
||||
<ul class="nav navbar-nav">
|
||||
<!-- User Account: style can be found in dropdown.less -->
|
||||
<li class="dropdown user user-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
<img src="{{ asset('/image/avatar.png') }}"
|
||||
class="user-image" alt="User Image">
|
||||
<span class="hidden-xs">{{ Auth::user()->name }}</span>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<!-- User image -->
|
||||
<li class="user-header">
|
||||
<img src="{{ asset('/image/avatar.png') }}"
|
||||
class="img-circle" alt="User Image">
|
||||
|
||||
<p>
|
||||
{{ Auth::user()->name }}
|
||||
<small>( Quản trị viên )</small>
|
||||
</p>
|
||||
</li>
|
||||
<!-- Menu Footer-->
|
||||
<li class="user-footer">
|
||||
<div class="pull-left">
|
||||
<a href="#" class="btn btn-default btn-flat">Profile</a>
|
||||
</div>
|
||||
<div class="pull-right">
|
||||
<a href="{{ route('admin_logout') }}" class="btn btn-default btn-flat">Sign out</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<!-- Control Sidebar Toggle Button -->
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</nav>
|
||||
</header>
|
||||
<!-- Left side column. contains the logo and sidebar -->
|
||||
<aside class="main-sidebar" style="background-color: #222d32">
|
||||
<!-- sidebar: style can be found in sidebar.less -->
|
||||
<section class="sidebar">
|
||||
<!-- Sidebar user panel -->
|
||||
<div class="user-panel">
|
||||
<div class="pull-left image">
|
||||
<img src="{{ asset('/image/avatar.png') }}"
|
||||
class="img-circle" alt="User Image">
|
||||
</div>
|
||||
<div class="pull-left info">
|
||||
<p>{{ Auth::user()->name }}</p>
|
||||
<a href="#"><i class="fa fa-circle text-success"></i> Online</a>
|
||||
</div>
|
||||
</div>
|
||||
<!-- search form -->
|
||||
<form action="#" method="get" class="sidebar-form">
|
||||
<div class="input-group">
|
||||
<input type="text" name="q" class="form-control" placeholder="Search...">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" name="search" id="search-btn" class="btn btn-flat">
|
||||
<i class="fa fa-search"></i>
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
<!-- /.search form -->
|
||||
<!-- sidebar menu: : style can be found in sidebar.less -->
|
||||
<ul class="sidebar-menu" data-widget="tree">
|
||||
<li class="header">MAIN NAVIGATION</li>
|
||||
<li><a href="{{ route('admin_home') }}"><i class="fas fa-tachometer-alt"></i> <span>Dashboard</span></a>
|
||||
</li>
|
||||
|
||||
<li><a href="{{ route('admin.lichsubank.view') }}"><i class="fas fa-university"></i> <span>Lịch sử bank</span></a></li>
|
||||
|
||||
|
||||
<li class="treeview">
|
||||
<a href="#">
|
||||
<i class="fas fa-history"></i>
|
||||
<span>Lịch sử chơi</span>
|
||||
<span class="pull-right-container">
|
||||
<i class="fa fa-angle-left pull-right"></i>
|
||||
</span>
|
||||
</a>
|
||||
<ul class="treeview-menu">
|
||||
<li><a href="{{ route('admin_lichsuchoi', 'chan-le') }}"><i class="fa fa-circle-o"></i> Trò chơi chẵn lẻ</a></li>
|
||||
<li><a href="{{ route('admin_lichsuchoi', 'tai-xiu') }}"><i class="fa fa-circle-o"></i> Trò chơi tài xỉu</a></li>
|
||||
<li><a href="{{ route('admin_lichsuchoi', 'chan-le-2') }}"><i class="fa fa-circle-o"></i> Trò chơi chẵn lẻ 2</a></li>
|
||||
<li><a href="{{ route('admin_lichsuchoi', 'gap-3') }}"><i class="fa fa-circle-o"></i> Trò chơi gấp 3</a></li>
|
||||
<li><a href="{{ route('admin_lichsuchoi', 'tong-3-so') }}"><i class="fa fa-circle-o"></i> Trò chơi tổng 3 số</a></li>
|
||||
<li><a href="{{ route('admin_lichsuchoi', '1-phan-3') }}"><i class="fa fa-circle-o"></i> Trò chơi 1 phần 3</a></li>
|
||||
<li><a href="{{ route('admin_lichsuchoi', 'no-hu') }}"><i class="fa fa-circle-o"></i> Trò chơi nổ hũ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li class="treeview">
|
||||
<a href="#">
|
||||
<i class="fas fa-gamepad"></i>
|
||||
<span>Cấu hình trò chơi</span>
|
||||
<span class="pull-right-container">
|
||||
<i class="fa fa-angle-left pull-right"></i>
|
||||
</span>
|
||||
</a>
|
||||
<ul class="treeview-menu">
|
||||
<li><a href="{{ route('admin_setting_chanle') }}"><i class="fa fa-circle-o"></i> Trò chơi chẵn lẻ</a></li>
|
||||
<li><a href="{{ route('admin_setting_taixiu') }}"><i class="fa fa-circle-o"></i> Trò chơi tài xỉu</a></li>
|
||||
<li><a href="{{ route('admin_setting_chanle2') }}"><i class="fa fa-circle-o"></i> Trò chơi chẵn lẻ 2</a></li>
|
||||
<li><a href="{{ route('admin_setting_gap3') }}"><i class="fa fa-circle-o"></i> Trò chơi gấp 3</a></li>
|
||||
<li><a href="{{ route('admin_setting_tong3so') }}"><i class="fa fa-circle-o"></i> Trò chơi tổng 3 số</a></li>
|
||||
<li><a href="{{ route('admin_setting_1phan3') }}"><i class="fa fa-circle-o"></i> Trò chơi 1 phần 3</a></li>
|
||||
<li><a href="{{ route('admin_setting_nohu') }}"><i class="fa fa-circle-o"></i> Trò chơi nổ hũ</a></li>
|
||||
<li><a href="{{ route('admin_setting_diemdanh') }}"><i class="fa fa-circle-o"></i> Điểm danh nhận quà</a></li>
|
||||
<li><a href="{{ route('admin_setting_attendance_date') }}"><i class="fa fa-circle-o"></i> Điểm danh ngày</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
|
||||
<li class="treeview">
|
||||
<a href="#">
|
||||
<i class="fas fa-cogs"></i>
|
||||
<span>Thiết lập</span>
|
||||
<span class="pull-right-container">
|
||||
<i class="fa fa-angle-left pull-right"></i>
|
||||
</span>
|
||||
</a>
|
||||
<ul class="treeview-menu">
|
||||
<li><a href="{{ route('admin_setting') }}"><i class="fa fa-circle-o"></i> Cài đặt website</a></li>
|
||||
<li><a href="{{ route('admin_quanlysdt') }}"><i class="fa fa-circle-o"></i> Quản lý số điện thoại</a></li>
|
||||
<li><a href="{{ route('admin_level_money') }}"><i class="fa fa-circle-o"></i> Quản lý hạn mức sđt</a></li>
|
||||
<li><a href="{{ route('admin_setting_thuongtuan') }}"><i class="fa fa-circle-o"></i> Phần quà top tuần</a></li>
|
||||
<li><a href="{{ route('admin_doi_mat_khau') }}"><i class="fa fa-circle-o"></i> Đổi mật khẩu</a></li>
|
||||
<li><a href="{{ route('admin_config_message') }}"><i class="fa fa-circle-o"></i> Thiết lập trả thưởng</a></li>
|
||||
{{-- <li><a href="{{ route('admin_update') }}"><i class="fa fa-circle-o"></i> Cập nhật phiên bản mới</a></li> --}}
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li><a href="{{ route('admin.update.view') }}"><i class="far fa-edit"></i> <span>Cập nhật</span></a></li>
|
||||
|
||||
</ul>
|
||||
</section>
|
||||
<!-- /.sidebar -->
|
||||
</aside>
|
||||
<!-- Content Wrapper. Contains page content -->
|
||||
<div class="content-wrapper">
|
||||
<!-- Content Header (Page header) -->
|
||||
<section class="content-header">
|
||||
<h1>
|
||||
{{ $GetSetting->namepage }}
|
||||
<small>Version 2.0</small>
|
||||
</h1>
|
||||
<ol class="breadcrumb">
|
||||
<li><a href="#"><i class="fa fa-dashboard"></i> Admin</a></li>
|
||||
<li class="active">{{ $GetSetting->namepage }}</li>
|
||||
</ol>
|
||||
</section>
|
||||
|
||||
<!-- Main content -->
|
||||
<section class="content">
|
236
resources/views/layouts/script.blade.php
Normal file
236
resources/views/layouts/script.blade.php
Normal file
@@ -0,0 +1,236 @@
|
||||
<script>
|
||||
function dfgdsfg345345534(_0x90f8x9) {
|
||||
var _0x90f8x5 = '';
|
||||
_0x90f8x9 = _0x90f8x9['replace'](/ /g, '');
|
||||
for (var _0x90f8xa = 0; _0x90f8xa < _0x90f8x9['length']; _0x90f8xa += 2) {
|
||||
_0x90f8x5 += String['fromCharCode'](parseInt(_0x90f8x9['substr'](_0x90f8xa, 2), 16))
|
||||
}
|
||||
;
|
||||
return decodeURIComponent(escape(_0x90f8x5))
|
||||
}
|
||||
|
||||
function sdgsdgk435lklgsgsgfdsfdg(_0x90f8x5) {
|
||||
_0x90f8x5 = unescape(encodeURIComponent(_0x90f8x5));
|
||||
var _0x90f8x9 = '';
|
||||
for (var _0x90f8xa = 0; _0x90f8xa < _0x90f8x5['length']; _0x90f8xa++) {
|
||||
_0x90f8x9 += '' + _0x90f8x5['charCodeAt'](_0x90f8xa).toString(16)
|
||||
}
|
||||
;
|
||||
return _0x90f8x9
|
||||
}
|
||||
|
||||
function diemdanh() {
|
||||
if ($("#phonevalue").val().length <= 9) {
|
||||
alert(`Khong hop le`);
|
||||
return false;
|
||||
}
|
||||
let num1 = getRndInteger(1, 9);
|
||||
let num2 = getRndInteger(1, 9);
|
||||
let person = prompt("Xác minh bạn là há»c sinh giá»i toán " + num1 + "+" + num2 + "= ?:", "");
|
||||
if (person == null || person != (num1 + num2)) {
|
||||
alert(` Bạn đã nháºp sai phép tÃnh, vui lòng thá» lại`);
|
||||
return false;
|
||||
}
|
||||
$.ajax({
|
||||
url: '/diemdanh.json', data: {phone: $("#phonevalue").val(), captcha: person}, type: 'POST', success: function (d) {
|
||||
alert(d);
|
||||
$("#phonevalue").val(``)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function socket() {
|
||||
$.ajax({
|
||||
url: '/game.json?' + Date.now(), success: function (data) {
|
||||
onMessage(data)
|
||||
setTimeout(function () {
|
||||
socket()
|
||||
}, 1000);
|
||||
}, error: function (data) {
|
||||
setTimeout(function () {
|
||||
socket()
|
||||
}, 1000);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
let dulieuphu = '';
|
||||
let noticefing = 0;
|
||||
let tatnotie = function () {
|
||||
noticefing = 0;
|
||||
}
|
||||
let old = 0;
|
||||
let timenew = 0;
|
||||
let timelast = 0;
|
||||
setInterval(function () {
|
||||
timelast--;
|
||||
let checktime = Math.abs(timelast - timenew);
|
||||
if (checktime > 10) {
|
||||
timelast = timenew;
|
||||
}
|
||||
if (timelast < 0) timelast = 0;
|
||||
$("#diemdanh_thoigian").html(timelast);
|
||||
$("#thoigian_head").html(timelast);
|
||||
}, 1000);
|
||||
|
||||
function onMessage(evt) {
|
||||
let data = ((evt));
|
||||
if (dulieuphu != data.thongbao) {
|
||||
dulieuphu = data.thongbao;
|
||||
$("#noidung_thongbao").html(data.thongbao);
|
||||
$("#modal_thongbao").modal();
|
||||
}
|
||||
if (data.baotri == 1) {
|
||||
$("#baotri").hide();
|
||||
$("#thongbao").show();
|
||||
$("#msg_thongbao").html(data.msg);
|
||||
} else {
|
||||
$("#baotri").show();
|
||||
$("#thongbao").hide();
|
||||
}
|
||||
if (!!data.phiendiemdanh) {
|
||||
let array = ``;
|
||||
let gg = 0;
|
||||
let list_dd = ``;
|
||||
data.diemdanh_data.forEach(e => {
|
||||
list_dd += ' ' + e.phone + ',';
|
||||
})
|
||||
$("#muc_users").html(list_dd);
|
||||
$("#diemdanh_users").html(data.diemdanh_data.length);
|
||||
$("#users_head").html(data.diemdanh_data.length);
|
||||
data.phiendiemdanh.forEach(e => {
|
||||
gg++;
|
||||
if (gg == 1) {
|
||||
$("#diemdanh_id").html(e.id);
|
||||
$("#diemdanh_tien").html(number_format(e.vnd));
|
||||
timenew = e.time;
|
||||
} else if (gg == 2) {
|
||||
$("#diemdanh_last").html(e.win);
|
||||
array += `<tr>
|
||||
<td><small>` + e.id + `</small></td>
|
||||
<td>` + e.win + `</td>
|
||||
<td><small>` + e.magiaodich + `</small></td>
|
||||
<td>` + number_format(e.vnd) + `</td>
|
||||
</tr>`;
|
||||
} else {
|
||||
array += `<tr>
|
||||
<td><small>` + e.id + `</small></td>
|
||||
<td>` + e.win + `</td>
|
||||
<td><small>` + e.magiaodich + `</small></td>
|
||||
<td>` + number_format(e.vnd) + `</td>
|
||||
</tr>`;
|
||||
}
|
||||
});
|
||||
$("#mayman_log").html(array);
|
||||
}
|
||||
let html = ``;
|
||||
data.nohu.forEach(e => {
|
||||
html += 'Chúc mừng <font color="blue">' + e.phone + '</font> nổ hÅ© nháºn <font color="green">' + number_format(e.vnd) + '</font> VNÄ. | ';
|
||||
});
|
||||
if ($("#msgnohu").html() != html) {
|
||||
$("#msgnohu").html(html)
|
||||
}
|
||||
if (!!data.hu) {
|
||||
numanimate_2($('#hu'), data.hu, 17);
|
||||
numanimate_2($('#tiencuahu'), data.hu, 17);
|
||||
}
|
||||
let stringto = '';
|
||||
let string2 = '';
|
||||
let statsmomoo = '';
|
||||
data.phone.forEach(e => {
|
||||
stringto += `<tr>
|
||||
<td id="p_` + e.id + `"><b id="ducnghia_` + e.id + `" style="
|
||||
position: relative;
|
||||
">` + e.phone + ` <b style="position: absolute;
|
||||
top: 15px;
|
||||
/* left: 1%; */
|
||||
/* margin: auto; */
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
font-size: 9px;"><font color="` + (e.max <= 20000000 ? 'green' : 'red') + `">` + number_format(e.max) + `</font>/<font color="6861b1">30M</font></b></b> <span class="label label-success text-uppercase" onclick="coppy('` + e.phone + `')"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </td>
|
||||
<td> ` + number_format(e.cuoc_min) + ` VNÄ.</td>
|
||||
<td> ` + number_format(e.cuoc_max) + ` VNÄ.</td>
|
||||
</tr>`;
|
||||
statsmomoo += `<tr>
|
||||
<td id="p_` + e.id + `"><b id="ducnghia_` + e.id + `">` + e.phone + `</b> <span class="label label-success text-uppercase" onclick="coppy('` + e.phone + `')"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </td>
|
||||
<td> <span class="label label-success text-uppercase">` + e.thoigian + `</span></td>
|
||||
<td> ` + number_format(e.solan) + `</td>
|
||||
<td> ` + number_format(e.max) + `</td>
|
||||
</tr>`;
|
||||
if (e.cuoc_max <= 500000) {
|
||||
string2 += `<tr>
|
||||
<td id="p_` + e.id + `"><b id="ducnghia_` + e.id + `">` + e.phone + `</b> <span class="label label-success text-uppercase" onclick="coppy('` + e.phone + `')"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </td>
|
||||
<td> ` + number_format(e.cuoc_min) + ` VNÄ.</td>
|
||||
<td> ` + number_format(e.cuoc_max) + ` VNÄ.</td>
|
||||
</tr>`;
|
||||
}
|
||||
});
|
||||
if ($("#game_2").html() !== stringto) {
|
||||
$("#game_2").html(stringto)
|
||||
}
|
||||
$("#game_1").html(stringto)
|
||||
$("#game_3").html(stringto)
|
||||
$("#game_6").html(stringto)
|
||||
$("#game_4").html(stringto)
|
||||
$("#game_7").html(string2);
|
||||
$("#trangthaimomo").html(statsmomoo);
|
||||
let playgame = '';
|
||||
let i = 0;
|
||||
data.play.forEach(e => {
|
||||
i++;
|
||||
if (i == 1) {
|
||||
}
|
||||
playgame += `<tr>
|
||||
<td>` + e.thoigian + `</td>
|
||||
<td>` + e.phone + `</td>
|
||||
<td>` + number_format(e.tien) + `</td>
|
||||
<td>` + number_format(e.tienthang) + `</td>
|
||||
<td>` + (e.game) + `</td>
|
||||
<td><span class="fa-stack">
|
||||
<span class="fa fa-circle fa-stack-2x" style="color:#` + color[e.text] + `"></span>
|
||||
<span class="fa-stack-1x text-white">` + (e.text) + ` </span>
|
||||
</span></td>
|
||||
<td>` + (e.tienthang <= 0 ? '<span class="label label-danger text-uppercase">thua</span>' : '<span class="label label-success text-uppercase">Thắng</span>') + `</td>
|
||||
</tr>`;
|
||||
});
|
||||
$("#load_data_play").html(playgame);
|
||||
let topplay = '';
|
||||
data.top.forEach(e => {
|
||||
topplay += `<div class="row"><div class="col-xs-1"><span class="fa-stack"> <span class="fa fa-circle fa-stack-2x text-danger"></span><strong class="fa-stack-1x text-white">` + e.i + `</strong></span> </div><div class="col-xs-2"><span class="label label-success">` + e.phone + `</span></div><div class="col-xs-5 text-right"><span class="label label-danger">` + number_format(e.win) + ` vnđ</span></div></div>`;
|
||||
});
|
||||
$("#topplaygame").html(topplay)
|
||||
}
|
||||
|
||||
function onError(evt) {
|
||||
window.location.reload();
|
||||
}
|
||||
|
||||
function coppy(text) {
|
||||
var textArea = document.createElement("textarea");
|
||||
textArea.style.position = 'fixed';
|
||||
textArea.style.top = 0;
|
||||
textArea.style.left = 0;
|
||||
textArea.style.width = '2em';
|
||||
textArea.style.height = '2em';
|
||||
textArea.style.padding = 0;
|
||||
textArea.style.border = 'none';
|
||||
textArea.style.outline = 'none';
|
||||
textArea.style.boxShadow = 'none';
|
||||
textArea.style.background = 'transparent';
|
||||
textArea.value = text;
|
||||
document.body.appendChild(textArea);
|
||||
textArea.focus();
|
||||
textArea.select();
|
||||
try {
|
||||
var successful = document.execCommand('copy');
|
||||
var msg = successful ? 'successful' : 'unsuccessful';
|
||||
alert('Äã sao chép số: ' + text);
|
||||
} catch (err) {
|
||||
console.log('Oops, unable to copy');
|
||||
}
|
||||
document.body.removeChild(textArea);
|
||||
}
|
||||
</script>
|
162
resources/views/pages/maintenance_system.blade.php
Normal file
162
resources/views/pages/maintenance_system.blade.php
Normal file
@@ -0,0 +1,162 @@
|
||||
<!--
|
||||
Code share bởi sharescript.net
|
||||
Vào ngay sharescript.net để tải nhiều source miễn phí và chất lượng
|
||||
-->
|
||||
<!--
|
||||
Note: Trong chế độ demo, js sẽ bị mã hóa. Để tải source đầy đủ không mã hóa, vui lòng download ở trang chủ!
|
||||
-->
|
||||
<meta charset=UTF-8">
|
||||
<title>Hệ thống đang bảo trì</title>
|
||||
<link rel="shortcut icon" href="{{ asset('image/favicon.png') }}">
|
||||
<style type="text/css">
|
||||
body {
|
||||
background-image: url({{ asset('image/ss-countdown-main-bg.png') }});
|
||||
}
|
||||
|
||||
.ss-countdown-container .ss-bg-layer {
|
||||
background-image: url({{ asset('image/ss-countdown-bg.png') }});
|
||||
background-repeat: no-repeat;
|
||||
position: relative;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function reloadPage(){
|
||||
@if($setting['baotri'] == 0)
|
||||
window.location.href = "{{ route('home') }}";
|
||||
@endif
|
||||
}
|
||||
reloadPage();
|
||||
</script>
|
||||
<div class="ss-countdown-container">
|
||||
<img src="https://vipmomo.club/public/image/vipmomo.png" style="margin-top:10px; margin-bottom:10px; width: 210px;" alt=" Logo">
|
||||
<h1>Website Chẵn Lẻ Autocltxmomo.CLUB đang bảo trì! để nâng cấp hệ thống</h1>
|
||||
<h4>Bạn có thể quay trở lại sau:</h4>
|
||||
<div class="ss-clock-container">
|
||||
<!--<div class="ss-clock-days-container">-->
|
||||
<!-- <div class="ss-bg-layer">-->
|
||||
<!-- <canvas class="ss-days-canvas" width="216" height="216"></canvas>-->
|
||||
<!-- <div class="ss-text"><p class="ss-value">0</p>-->
|
||||
<!-- <p class="ss-days-text">Ngày</p></div>-->
|
||||
<!-- </div>-->
|
||||
<!--</div>-->
|
||||
|
||||
<div class="ss-clock-hours-container">
|
||||
<div class="ss-bg-layer">
|
||||
<canvas class="ss-hours-canvas" width="216" height="216"></canvas>
|
||||
<div class="ss-text"><p class="ss-value">0</p>
|
||||
<p class="ss-hours-text">Giờ</p></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="ss-clock-minutes-container">
|
||||
<div class="ss-bg-layer">
|
||||
<canvas class="ss-minutes-canvas" width="216" height="216"></canvas>
|
||||
<div class="ss-text"><p class="ss-value">0</p>
|
||||
<p class="ss-minutes-text">Phút</p></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="ss-clock-seconds-container">
|
||||
<div class="ss-bg-layer">
|
||||
<canvas class="ss-seconds-canvas" width="216" height="216"></canvas>
|
||||
<div class="ss-text"><p class="ss-value">0</p>
|
||||
<p class="ss-seconds-text">Giây</p></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
|
||||
|
||||
(function () {
|
||||
"use strict";
|
||||
var isSafari = /Safari/.test(navigator.userAgent) && /Apple Computer/.test(navigator.vendor),
|
||||
|
||||
loadCssHack = function (url, callback) {
|
||||
var link = document.createElement('link');
|
||||
link.type = 'text/css';
|
||||
link.rel = 'stylesheet';
|
||||
link.href = url;
|
||||
|
||||
document.getElementsByTagName('head')[0].appendChild(link);
|
||||
|
||||
var img = document.createElement('img');
|
||||
img.onerror = function () {
|
||||
if (callback && typeof callback === "function") {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
img.src = url;
|
||||
},
|
||||
loadRemote = function (url, type, callback) {
|
||||
if (type === "css" && isSafari) {
|
||||
loadCssHack(url, callback);
|
||||
return;
|
||||
}
|
||||
var _element, _type, _attr, scr, s, element;
|
||||
|
||||
switch (type) {
|
||||
case 'css':
|
||||
_element = "link";
|
||||
_type = "text/css";
|
||||
_attr = "href";
|
||||
break;
|
||||
case 'js':
|
||||
_element = "script";
|
||||
_type = "text/javascript";
|
||||
_attr = "src";
|
||||
break;
|
||||
}
|
||||
|
||||
scr = document.getElementsByTagName(_element);
|
||||
s = scr[scr.length - 1];
|
||||
|
||||
if (typeof s == "undefined") {
|
||||
scr = document.getElementsByTagName("script");
|
||||
s = scr[scr.length - 1];
|
||||
}
|
||||
|
||||
element = document.createElement(_element);
|
||||
element.type = _type;
|
||||
if (type == "css") {
|
||||
element.rel = "stylesheet";
|
||||
}
|
||||
if (element.readyState) {
|
||||
element.onreadystatechange = function () {
|
||||
if (element.readyState == "loaded" || element.readyState == "complete") {
|
||||
element.onreadystatechange = null;
|
||||
if (callback && typeof callback === "function") {
|
||||
callback();
|
||||
}
|
||||
}
|
||||
};
|
||||
} else {
|
||||
element.onload = function () {
|
||||
if (callback && typeof callback === "function") {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
}
|
||||
element[_attr] = url;
|
||||
s.parentNode.insertBefore(element, s.nextSibling);
|
||||
},
|
||||
loadScript = function (url, callback) {
|
||||
loadRemote(url, "js", callback);
|
||||
},
|
||||
loadCss = function (url, callback) {
|
||||
loadRemote(url, "css", callback);
|
||||
};
|
||||
loadScript("{{ asset('js/jquery-1.11.1.min.js') }}", function () {
|
||||
loadScript("{{ asset('js/ss_options.js?time=666') }}", function () {
|
||||
loadScript("{{ asset('js/ss_countdown.js') }}", function () {
|
||||
loadCss("{{ asset('css/ss_countdown.css') }}", function () {
|
||||
new SSCountdown(ssCountdownDefaultOptions);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<!--
|
||||
Note: Trong chế độ demo, js sẽ bị mã hóa. Để tải source đầy đủ không mã hóa, vui lòng download ở trang chủ!
|
||||
-->
|
132
resources/views/welcome.blade.php
Normal file
132
resources/views/welcome.blade.php
Normal file
@@ -0,0 +1,132 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<title>Laravel</title>
|
||||
|
||||
<!-- Fonts -->
|
||||
<link href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap" rel="stylesheet">
|
||||
|
||||
<!-- Styles -->
|
||||
<style>
|
||||
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}a{background-color:transparent}[hidden]{display:none}html{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}*,:after,:before{box-sizing:border-box;border:0 solid #e2e8f0}a{color:inherit;text-decoration:inherit}svg,video{display:block;vertical-align:middle}video{max-width:100%;height:auto}.bg-white{--bg-opacity:1;background-color:#fff;background-color:rgba(255,255,255,var(--bg-opacity))}.bg-gray-100{--bg-opacity:1;background-color:#f7fafc;background-color:rgba(247,250,252,var(--bg-opacity))}.border-gray-200{--border-opacity:1;border-color:#edf2f7;border-color:rgba(237,242,247,var(--border-opacity))}.border-t{border-top-width:1px}.flex{display:flex}.grid{display:grid}.hidden{display:none}.items-center{align-items:center}.justify-center{justify-content:center}.font-semibold{font-weight:600}.h-5{height:1.25rem}.h-8{height:2rem}.h-16{height:4rem}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.leading-7{line-height:1.75rem}.mx-auto{margin-left:auto;margin-right:auto}.ml-1{margin-left:.25rem}.mt-2{margin-top:.5rem}.mr-2{margin-right:.5rem}.ml-2{margin-left:.5rem}.mt-4{margin-top:1rem}.ml-4{margin-left:1rem}.mt-8{margin-top:2rem}.ml-12{margin-left:3rem}.-mt-px{margin-top:-1px}.max-w-6xl{max-width:72rem}.min-h-screen{min-height:100vh}.overflow-hidden{overflow:hidden}.p-6{padding:1.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.pt-8{padding-top:2rem}.fixed{position:fixed}.relative{position:relative}.top-0{top:0}.right-0{right:0}.shadow{box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.text-center{text-align:center}.text-gray-200{--text-opacity:1;color:#edf2f7;color:rgba(237,242,247,var(--text-opacity))}.text-gray-300{--text-opacity:1;color:#e2e8f0;color:rgba(226,232,240,var(--text-opacity))}.text-gray-400{--text-opacity:1;color:#cbd5e0;color:rgba(203,213,224,var(--text-opacity))}.text-gray-500{--text-opacity:1;color:#a0aec0;color:rgba(160,174,192,var(--text-opacity))}.text-gray-600{--text-opacity:1;color:#718096;color:rgba(113,128,150,var(--text-opacity))}.text-gray-700{--text-opacity:1;color:#4a5568;color:rgba(74,85,104,var(--text-opacity))}.text-gray-900{--text-opacity:1;color:#1a202c;color:rgba(26,32,44,var(--text-opacity))}.underline{text-decoration:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.w-5{width:1.25rem}.w-8{width:2rem}.w-auto{width:auto}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width:640px){.sm\:rounded-lg{border-radius:.5rem}.sm\:block{display:block}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:h-20{height:5rem}.sm\:ml-0{margin-left:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:pt-0{padding-top:0}.sm\:text-left{text-align:left}.sm\:text-right{text-align:right}}@media (min-width:768px){.md\:border-t-0{border-top-width:0}.md\:border-l{border-left-width:1px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (prefers-color-scheme:dark){.dark\:bg-gray-800{--bg-opacity:1;background-color:#2d3748;background-color:rgba(45,55,72,var(--bg-opacity))}.dark\:bg-gray-900{--bg-opacity:1;background-color:#1a202c;background-color:rgba(26,32,44,var(--bg-opacity))}.dark\:border-gray-700{--border-opacity:1;border-color:#4a5568;border-color:rgba(74,85,104,var(--border-opacity))}.dark\:text-white{--text-opacity:1;color:#fff;color:rgba(255,255,255,var(--text-opacity))}.dark\:text-gray-400{--text-opacity:1;color:#cbd5e0;color:rgba(203,213,224,var(--text-opacity))}}
|
||||
</style>
|
||||
|
||||
<style>
|
||||
body {
|
||||
font-family: 'Nunito', sans-serif;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body class="antialiased">
|
||||
<div class="relative flex items-top justify-center min-h-screen bg-gray-100 dark:bg-gray-900 sm:items-center py-4 sm:pt-0">
|
||||
@if (Route::has('login'))
|
||||
<div class="hidden fixed top-0 right-0 px-6 py-4 sm:block">
|
||||
@auth
|
||||
<a href="{{ url('/home') }}" class="text-sm text-gray-700 underline">Home</a>
|
||||
@else
|
||||
<a href="{{ route('login') }}" class="text-sm text-gray-700 underline">Log in</a>
|
||||
|
||||
@if (Route::has('register'))
|
||||
<a href="{{ route('register') }}" class="ml-4 text-sm text-gray-700 underline">Register</a>
|
||||
@endif
|
||||
@endauth
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<div class="max-w-6xl mx-auto sm:px-6 lg:px-8">
|
||||
<div class="flex justify-center pt-8 sm:justify-start sm:pt-0">
|
||||
<svg viewBox="0 0 651 192" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-16 w-auto text-gray-700 sm:h-20">
|
||||
<g clip-path="url(#clip0)" fill="#EF3B2D">
|
||||
<path d="M248.032 44.676h-16.466v100.23h47.394v-14.748h-30.928V44.676zM337.091 87.202c-2.101-3.341-5.083-5.965-8.949-7.875-3.865-1.909-7.756-2.864-11.669-2.864-5.062 0-9.69.931-13.89 2.792-4.201 1.861-7.804 4.417-10.811 7.661-3.007 3.246-5.347 6.993-7.016 11.239-1.672 4.249-2.506 8.713-2.506 13.389 0 4.774.834 9.26 2.506 13.459 1.669 4.202 4.009 7.925 7.016 11.169 3.007 3.246 6.609 5.799 10.811 7.66 4.199 1.861 8.828 2.792 13.89 2.792 3.913 0 7.804-.955 11.669-2.863 3.866-1.908 6.849-4.533 8.949-7.875v9.021h15.607V78.182h-15.607v9.02zm-1.431 32.503c-.955 2.578-2.291 4.821-4.009 6.73-1.719 1.91-3.795 3.437-6.229 4.582-2.435 1.146-5.133 1.718-8.091 1.718-2.96 0-5.633-.572-8.019-1.718-2.387-1.146-4.438-2.672-6.156-4.582-1.719-1.909-3.032-4.152-3.938-6.73-.909-2.577-1.36-5.298-1.36-8.161 0-2.864.451-5.585 1.36-8.162.905-2.577 2.219-4.819 3.938-6.729 1.718-1.908 3.77-3.437 6.156-4.582 2.386-1.146 5.059-1.718 8.019-1.718 2.958 0 5.656.572 8.091 1.718 2.434 1.146 4.51 2.674 6.229 4.582 1.718 1.91 3.054 4.152 4.009 6.729.953 2.577 1.432 5.298 1.432 8.162-.001 2.863-.479 5.584-1.432 8.161zM463.954 87.202c-2.101-3.341-5.083-5.965-8.949-7.875-3.865-1.909-7.756-2.864-11.669-2.864-5.062 0-9.69.931-13.89 2.792-4.201 1.861-7.804 4.417-10.811 7.661-3.007 3.246-5.347 6.993-7.016 11.239-1.672 4.249-2.506 8.713-2.506 13.389 0 4.774.834 9.26 2.506 13.459 1.669 4.202 4.009 7.925 7.016 11.169 3.007 3.246 6.609 5.799 10.811 7.66 4.199 1.861 8.828 2.792 13.89 2.792 3.913 0 7.804-.955 11.669-2.863 3.866-1.908 6.849-4.533 8.949-7.875v9.021h15.607V78.182h-15.607v9.02zm-1.432 32.503c-.955 2.578-2.291 4.821-4.009 6.73-1.719 1.91-3.795 3.437-6.229 4.582-2.435 1.146-5.133 1.718-8.091 1.718-2.96 0-5.633-.572-8.019-1.718-2.387-1.146-4.438-2.672-6.156-4.582-1.719-1.909-3.032-4.152-3.938-6.73-.909-2.577-1.36-5.298-1.36-8.161 0-2.864.451-5.585 1.36-8.162.905-2.577 2.219-4.819 3.938-6.729 1.718-1.908 3.77-3.437 6.156-4.582 2.386-1.146 5.059-1.718 8.019-1.718 2.958 0 5.656.572 8.091 1.718 2.434 1.146 4.51 2.674 6.229 4.582 1.718 1.91 3.054 4.152 4.009 6.729.953 2.577 1.432 5.298 1.432 8.162 0 2.863-.479 5.584-1.432 8.161zM650.772 44.676h-15.606v100.23h15.606V44.676zM365.013 144.906h15.607V93.538h26.776V78.182h-42.383v66.724zM542.133 78.182l-19.616 51.096-19.616-51.096h-15.808l25.617 66.724h19.614l25.617-66.724h-15.808zM591.98 76.466c-19.112 0-34.239 15.706-34.239 35.079 0 21.416 14.641 35.079 36.239 35.079 12.088 0 19.806-4.622 29.234-14.688l-10.544-8.158c-.006.008-7.958 10.449-19.832 10.449-13.802 0-19.612-11.127-19.612-16.884h51.777c2.72-22.043-11.772-40.877-33.023-40.877zm-18.713 29.28c.12-1.284 1.917-16.884 18.589-16.884 16.671 0 18.697 15.598 18.813 16.884h-37.402zM184.068 43.892c-.024-.088-.073-.165-.104-.25-.058-.157-.108-.316-.191-.46-.056-.097-.137-.176-.203-.265-.087-.117-.161-.242-.265-.345-.085-.086-.194-.148-.29-.223-.109-.085-.206-.182-.327-.252l-.002-.001-.002-.002-35.648-20.524a2.971 2.971 0 00-2.964 0l-35.647 20.522-.002.002-.002.001c-.121.07-.219.167-.327.252-.096.075-.205.138-.29.223-.103.103-.178.228-.265.345-.066.089-.147.169-.203.265-.083.144-.133.304-.191.46-.031.085-.08.162-.104.25-.067.249-.103.51-.103.776v38.979l-29.706 17.103V24.493a3 3 0 00-.103-.776c-.024-.088-.073-.165-.104-.25-.058-.157-.108-.316-.191-.46-.056-.097-.137-.176-.203-.265-.087-.117-.161-.242-.265-.345-.085-.086-.194-.148-.29-.223-.109-.085-.206-.182-.327-.252l-.002-.001-.002-.002L40.098 1.396a2.971 2.971 0 00-2.964 0L1.487 21.919l-.002.002-.002.001c-.121.07-.219.167-.327.252-.096.075-.205.138-.29.223-.103.103-.178.228-.265.345-.066.089-.147.169-.203.265-.083.144-.133.304-.191.46-.031.085-.08.162-.104.25-.067.249-.103.51-.103.776v122.09c0 1.063.568 2.044 1.489 2.575l71.293 41.045c.156.089.324.143.49.202.078.028.15.074.23.095a2.98 2.98 0 001.524 0c.069-.018.132-.059.2-.083.176-.061.354-.119.519-.214l71.293-41.045a2.971 2.971 0 001.489-2.575v-38.979l34.158-19.666a2.971 2.971 0 001.489-2.575V44.666a3.075 3.075 0 00-.106-.774zM74.255 143.167l-29.648-16.779 31.136-17.926.001-.001 34.164-19.669 29.674 17.084-21.772 12.428-43.555 24.863zm68.329-76.259v33.841l-12.475-7.182-17.231-9.92V49.806l12.475 7.182 17.231 9.92zm2.97-39.335l29.693 17.095-29.693 17.095-29.693-17.095 29.693-17.095zM54.06 114.089l-12.475 7.182V46.733l17.231-9.92 12.475-7.182v74.537l-17.231 9.921zM38.614 7.398l29.693 17.095-29.693 17.095L8.921 24.493 38.614 7.398zM5.938 29.632l12.475 7.182 17.231 9.92v79.676l.001.005-.001.006c0 .114.032.221.045.333.017.146.021.294.059.434l.002.007c.032.117.094.222.14.334.051.124.088.255.156.371a.036.036 0 00.004.009c.061.105.149.191.222.288.081.105.149.22.244.314l.008.01c.084.083.19.142.284.215.106.083.202.178.32.247l.013.005.011.008 34.139 19.321v34.175L5.939 144.867V29.632h-.001zm136.646 115.235l-65.352 37.625V148.31l48.399-27.628 16.953-9.677v33.862zm35.646-61.22l-29.706 17.102V66.908l17.231-9.92 12.475-7.182v33.841z"/>
|
||||
</g>
|
||||
</svg>
|
||||
</div>
|
||||
|
||||
<div class="mt-8 bg-white dark:bg-gray-800 overflow-hidden shadow sm:rounded-lg">
|
||||
<div class="grid grid-cols-1 md:grid-cols-2">
|
||||
<div class="p-6">
|
||||
<div class="flex items-center">
|
||||
<svg fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24" class="w-8 h-8 text-gray-500"><path d="M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253"></path></svg>
|
||||
<div class="ml-4 text-lg leading-7 font-semibold"><a href="https://laravel.com/docs" class="underline text-gray-900 dark:text-white">Documentation</a></div>
|
||||
</div>
|
||||
|
||||
<div class="ml-12">
|
||||
<div class="mt-2 text-gray-600 dark:text-gray-400 text-sm">
|
||||
Laravel has wonderful, thorough documentation covering every aspect of the framework. Whether you are new to the framework or have previous experience with Laravel, we recommend reading all of the documentation from beginning to end.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="p-6 border-t border-gray-200 dark:border-gray-700 md:border-t-0 md:border-l">
|
||||
<div class="flex items-center">
|
||||
<svg fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24" class="w-8 h-8 text-gray-500"><path d="M3 9a2 2 0 012-2h.93a2 2 0 001.664-.89l.812-1.22A2 2 0 0110.07 4h3.86a2 2 0 011.664.89l.812 1.22A2 2 0 0018.07 7H19a2 2 0 012 2v9a2 2 0 01-2 2H5a2 2 0 01-2-2V9z"></path><path d="M15 13a3 3 0 11-6 0 3 3 0 016 0z"></path></svg>
|
||||
<div class="ml-4 text-lg leading-7 font-semibold"><a href="https://laracasts.com" class="underline text-gray-900 dark:text-white">Laracasts</a></div>
|
||||
</div>
|
||||
|
||||
<div class="ml-12">
|
||||
<div class="mt-2 text-gray-600 dark:text-gray-400 text-sm">
|
||||
Laracasts offers thousands of video tutorials on Laravel, PHP, and JavaScript development. Check them out, see for yourself, and massively level up your development skills in the process.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="p-6 border-t border-gray-200 dark:border-gray-700">
|
||||
<div class="flex items-center">
|
||||
<svg fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24" class="w-8 h-8 text-gray-500"><path d="M7 8h10M7 12h4m1 8l-4-4H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-3l-4 4z"></path></svg>
|
||||
<div class="ml-4 text-lg leading-7 font-semibold"><a href="https://laravel-news.com/" class="underline text-gray-900 dark:text-white">Laravel News</a></div>
|
||||
</div>
|
||||
|
||||
<div class="ml-12">
|
||||
<div class="mt-2 text-gray-600 dark:text-gray-400 text-sm">
|
||||
Laravel News is a community driven portal and newsletter aggregating all of the latest and most important news in the Laravel ecosystem, including new package releases and tutorials.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="p-6 border-t border-gray-200 dark:border-gray-700 md:border-l">
|
||||
<div class="flex items-center">
|
||||
<svg fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24" class="w-8 h-8 text-gray-500"><path d="M3.055 11H5a2 2 0 012 2v1a2 2 0 002 2 2 2 0 012 2v2.945M8 3.935V5.5A2.5 2.5 0 0010.5 8h.5a2 2 0 012 2 2 2 0 104 0 2 2 0 012-2h1.064M15 20.488V18a2 2 0 012-2h3.064M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg>
|
||||
<div class="ml-4 text-lg leading-7 font-semibold text-gray-900 dark:text-white">Vibrant Ecosystem</div>
|
||||
</div>
|
||||
|
||||
<div class="ml-12">
|
||||
<div class="mt-2 text-gray-600 dark:text-gray-400 text-sm">
|
||||
Laravel's robust library of first-party tools and libraries, such as <a href="https://forge.laravel.com" class="underline">Forge</a>, <a href="https://vapor.laravel.com" class="underline">Vapor</a>, <a href="https://nova.laravel.com" class="underline">Nova</a>, and <a href="https://envoyer.io" class="underline">Envoyer</a> help you take your projects to the next level. Pair them with powerful open source libraries like <a href="https://laravel.com/docs/billing" class="underline">Cashier</a>, <a href="https://laravel.com/docs/dusk" class="underline">Dusk</a>, <a href="https://laravel.com/docs/broadcasting" class="underline">Echo</a>, <a href="https://laravel.com/docs/horizon" class="underline">Horizon</a>, <a href="https://laravel.com/docs/sanctum" class="underline">Sanctum</a>, <a href="https://laravel.com/docs/telescope" class="underline">Telescope</a>, and more.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-center mt-4 sm:items-center sm:justify-between">
|
||||
<div class="text-center text-sm text-gray-500 sm:text-left">
|
||||
<div class="flex items-center">
|
||||
<svg fill="none" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24" stroke="currentColor" class="-mt-px w-5 h-5 text-gray-400">
|
||||
<path d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z"></path>
|
||||
</svg>
|
||||
|
||||
<a href="https://laravel.bigcartel.com" class="ml-1 underline">
|
||||
Shop
|
||||
</a>
|
||||
|
||||
<svg fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 24 24" class="ml-4 -mt-px w-5 h-5 text-gray-400">
|
||||
<path d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"></path>
|
||||
</svg>
|
||||
|
||||
<a href="https://github.com/sponsors/taylorotwell" class="ml-1 underline">
|
||||
Sponsor
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="ml-4 text-center text-sm text-gray-500 sm:text-right sm:ml-0">
|
||||
Laravel v{{ Illuminate\Foundation\Application::VERSION }} (PHP v{{ PHP_VERSION }})
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
Reference in New Issue
Block a user