Skip to content

Instantly share code, notes, and snippets.

@ggarcia92
ggarcia92 / verifyEloquentQuery.php
Last active April 27, 2024 03:37
Know queries generated by Eloquent
DB::enableQueryLog();
$val = 1;
$results = Model::with(['relation' => function($q) use ($val){
$q->where('col', $val);
}])->get();
dd(DB::getQueryLog());
@ggarcia92
ggarcia92 / Qr.vue
Last active April 27, 2024 03:36
QrCode Display and Export to PDF in Vue3/Quasar
<template>
<vue-qrcode :value="json" ref="qr" :options="{ width: 200 }"></vue-qrcode>
<q-btn label="Export" @click="exportPDF" />
</template>
<script>
import Jspdf from "jspdf";
export default {
name: "PageIndex",
data() {
@erratir
erratir / Qr.vue
Created March 30, 2021 11:07 — forked from ggarcia92/Qr.vue
QrCode Display and Export to PDF in Vue/Quasar
<template>
<q-page class="flex flex-center">
<qrcode :value="json" ref="qr" :options="{ width: 200 }"></qrcode>
<q-btn label="Export" @click="exportPDF"/>
</q-page>
</template>
<script>
import Jspdf from 'jspdf'
@erratir
erratir / utils.js
Last active April 27, 2024 03:35
convert dd.mm.yyyy to Date
/**
* 'dd.mm.yyyy' to Date
* @param {string} dateStr
* @returns {Date}
*/
const toDate = (dateStr) => {
const [day, month, year] = dateStr.split('.').map(el => parseInt(el))
return new Date(year, month - 1, day)
}
@erratir
erratir / startJobAt.js
Last active April 27, 2024 03:35
start job at time
function startJobAt(hh, mm, code) {
var interval = 0;
var today = new Date();
var todayHH = today.getHours();
var todayMM = today.getMinutes();
if ((todayHH > hh) || (todayHH == hh && todayMM > mm)) {
var midnight = new Date();
midnight.setHours(24,0,0,0);
interval = midnight.getTime() - today.getTime() +
(hh * 60 * 60 * 1000) + (mm * 60 * 1000);
@erratir
erratir / Dockerfile.node-gyp
Created August 13, 2021 14:42 — forked from takuto-h/Dockerfile.node-gyp
Use node-gyp with node:*-slim
FROM node:10.15.1-slim
COPY ./package.json ./yarn.lock /app/
# Install dependencies for node-gyp
# https://github.com/nodejs/node-gyp#on-unix
RUN buildDeps='g++ make python' \
&& apt-get update \
&& apt-get install -y --no-install-recommends $buildDeps \
&& cd /app \
@erratir
erratir / utils.js
Created February 3, 2023 05:42
Поиск ближайшего значения в массиве
/**
* Поиск ближайшего значения в массиве
* @param array
* @param target
* @returns {*}
*/
const closest = (array, target) => {
return array.reduce((prev, curr) => {
return (Math.abs(curr - target) < Math.abs(prev - target) ? curr : prev);
})
@mignonstyle
mignonstyle / markdown-cheatsheet.md
Last active April 27, 2024 03:32
Markdown記法 チートシート

Block Elements ## Headers 見出し 先頭に#をレベルの数だけ記述します。 ```

見出し1

見出し2

見出し3

見出し4

見出し5
見出し6
## 見出し2
### 見出し3
#### 見出し4
##### 見出し5
###### 見出し6 ## Block 段落 空白行を挟むことで段落となります。 ```
段落1
(空行)
段落2
``` 段落1 段落2 ## Br 改行 改行の前に半角スペース` `を2つ記述します。 ```
hoge
fuga(スペース2つ)
piyo
``` hoge
fuga piyo ## Blockquotes 引用 先頭に`&gt;`を記述します。ネストは`&gt;`を多重に記述します。 ```
&gt; 引用 &gt; 引用
&gt;&gt; 多重引用
``` &gt; 引用 &gt; 引用
&gt;&gt; 多重引用 ## Code コード `` `バッククオート` `` 3つ、あるいはダッシュ`~`3つで囲みます。 ```
print 'hoge'
``` ```
print 'hoge'
``` ### インラインコード `` `バッククオート` `` で単語を囲むとインラインコードになります。 ```
これは `インラインコード`です。
``` これは `インラインコード`です。 ## pre 整形済みテキスト 半角スペース4個もしくはタブで、コードブロックをpre表示できます ``` class Hoge def hoge print 'hoge' end end
``` class Hoge def hoge print 'hoge' end end ## Hr 水平線 アンダースコア`_` 、アスタリスク`*`、ハイフン`-`などを3つ以上連続して記述します。 ```
hoge
***
hoge
___
hoge
---
``` hoge
***
hoge
___
hoge
--- # Lists ## Ul 箇条書きリスト ハイフン`-`、プラス`+`、アスタリスク`*`のいずれかを先頭に記
@erratir
erratir / scratch_30.js
Created August 31, 2023 05:31
Функция ограничивает максимальное время выполнение переданного промиса
/**
* Функция ограничивает максимальное время выполнение переданного промиса
* @param {Function} fn
* @param {number} t ограничение по времени
* @return {Function}
*/
const timeLimit = function(fn, t) {
return async function(...args) {
const timeLimitExceeded = new Promise((resolve, reject) => setTimeout(() => reject(`Time Limit Exceeded at t=${t}ms`), t))
return await Promise.race([timeLimitExceeded, fn(...args)])
@erratir
erratir / readme.md
Created August 27, 2019 14:28
Шпаргалка по Markdown