groups
user_id: foreign key -> users.id
manager_id: int
user_id, manager_id: primary key
is_deleted: boolean
work_id: foreign key -> works.id, nullable
worker_1_rarity: int, nullable
worker_2_rarity: int nullable
worker_3_rarity: int, nullable
users_groups_sets
id_user: foreign key -> users.id (primary key)
managers_count: int // кол-во всех управляющих
workers_1_count: int // кол-во всех рабочих 1 уровня производительности и т.д.
workers_2_count: int
workers_3_count: int
workers_4_count: int
workers_5_count: int
$curl = curl_init();
$data = array(
"amount" => "15",
"currency" => "USD",
"order_id" => "1",
"url_return" => "https://your.site/return",
"url_callback" => "https://your.site/callback"
);
$headers = array(
"merchant: 8b03432e-385b-4670-8d06-064591096795",
"sign: fe99035f86fa436181717b302b95bacff1",
"Content-Type: application/json"
);
$options = array(
CURLOPT_URL => "https://api.cryptomus.com/v1/payment",
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => json_encode($data),
CURLOPT_HTTPHEADER => $headers
);
curl_setopt_array($curl, $options);
$response = curl_exec($curl);
curl_close($curl);
class SqlLoggingServiceProvider extends ServiceProvider
{
public function boot()
{
if (config("database.connections." . env('DB_CONNECTION') . ".logging")) {
DB::listen(function ($query) {
Log::channel('sql') // название канала, указанное в конфиге
->info($query->sql, ['time' => $query->time, 'bindings' => $query->bindings]);
});
}
}
//..
}
'connections' => [
//...
'pgsql' => [
//..
'logging' => true,
'channel' => 'sql', // название канала
]
],
'channels' => [
//..
'sql' => [
'driver' => 'daily',
'path' => storage_path('sql/laravel.log'),
'level' => 'debug',
'days' => 7,
],
let element , element2;
someFuncton(element.style.height, element);
someFuncton(element.style.width, element)
function someFuncton(value, element){
/* теперь тут доступен элемент и у него можно менять разные стили */
}
// условие: сумма от 1000 до 1499
if ($woocommerce->cart->total >= $cart_total
&& $woocommerce->cart->total <= 1499) {
if (sizeof($woocommerce->cart->get_cart()) > 0) {
foreach ($woocommerce->cart->get_cart() as $cart_item_key => $values) {
$_product = $values['data'];
if ($_product->get_id() == $product_id)
$found = true;
}
if (!$found)
$woocommerce->cart->add_to_cart($product_id);
} else {
$woocommerce->cart->add_to_cart($product_id);
}
} elseif ($woocommerce->cart->total >= 1500) { // условие: сумма от 1500
/* ... */
}
function tr(){
texta.value += '<table><tbody>'; // Один раз создаёте таблицу
for(let i = 0; i<table1.value;i++){
texta.value += '<tr>';
td(); /* Вызов td() должен быть тут, внутри строки, и нигде больше */
texta.value += '</tr>';
// texta.value += `<table><tbody><tr><td style = "width:${table4.value}px;height:${table3.value}px;border:${table5.value}px ${tableselect.value} ${colorselect.value}"</td></tr>`
}
}
function td(){
for(let i = 0; i<table2.value;i++){
texta.value += '<td style = "width:${table4.value}px;height:${table3.value}px;border:${table5.value}px ${tableselect.value} ${colorselect.value}"</td>';
// texta.value += `<table><tbody><tr><td style = "width:${table4.value}px;height:${table3.value}px;border:${table5.value}px ${tableselect.value} ${colorselect.value}"</td></tr>`
}
}
let gd = document.querySelector('#gd');
let str = gd.innerText;
let number_gd = parseInt(str.replace(/[^\d]/g, ''));
if (number_gd > 10)
document.querySelector('#example').style.visibility = 'hidden';
<div id="app"> </div>
был дочерним элементом body и содержал в себе уже весь остальном контент, в т.ч. мои js-скрипты.<input id="my_input" type="range" value="0" max="100" min="0">
var inp_value; // Здесь храните значение range
// Ваша функция для действий со значением из range
function my_function(value) {
// что-то делаете с полученным значением
}
// Вешаете обработчик события mousemove на range
document.querySelector("#my_input").addEventListener("mousemove", function() {
inp_value = this.value; // Сохраняете изменённое значение
});
my_function(inp_value); // Собственно, вызываете ф-ю со значением range
...
protected $commands = [
'App\Console\Commands\DateTasksUsers'
];
protected function schedule(Schedule $schedule)
{
$schedule->command('date_tasks:users')->everyMinute();
}
...
...
protected $signature = 'date_tasks:users';
...
public function handle()
{
$tasks = TaskUser::where('date_end', '<=', time())
->get();
if (!is_null($tasks)) {
foreach($tasks as $task)
{
if ($task->type == 1)
User::task_change($task); // там уже проверяем данные, обновляем данные в бд, уведомление кидаем
// юзеру и т.д. Там же в конце удаляем эту задачу.
elseif ($task->type == 2)
Item::task_upgrade($task);
// дальше так же добавлять новые типы задач и вызов соответствующих ф-й для них
}
}
}
Route::get('storage/{filename}', function ($filename)
{
$path = storage_path('app\public\\' . $filename);
if (!File::exists($path)) {
abort(404);
}
$file = File::get($path);
$type = File::mimeType($path);
$response = Response::make($file, 200);
$response->header("Content-Type", $type);
return $response;
});