Skip to content

Instantly share code, notes, and snippets.

View susilolab's full-sized avatar

Agus Susilo susilolab

View GitHub Profile
@susilolab
susilolab / linux-cli.md
Created October 2, 2025 04:26
Menghapus file secara masal dengan pola tertentu dengan xargs

exa -1 migrations | rg seeder | xargs -I {} rm -fv "migrations/{}"

Tips neovim

Replace karakter ^M pada file

%s/\%u000d//g

@susilolab
susilolab / secure-delete.php
Created June 8, 2024 12:41
Secure delete dan update pada yii1 dengan CDbCommand
<?php
declare(strict_types=1);
// delete data tabel user yang id nya 1,2,3
Yii::app()->db->createCommand()->delete('user', ['in', 'user_id', [1, 2, 3]);
// update posts set published 1 yang id postnya 1,2,3
Yii::app()->db->createCommand()->update('posts', ['published' => 1], ['in', 'id', [1, 2, 3]);
// query where tidak bisa menggunakan array seperti diatas, harus pakai string kondisi dan array params
@susilolab
susilolab / js-tips.js
Created January 7, 2024 01:10
Tips javascript
// generate array 1 - 10
const nums = [...Array.from(10).keys()].map(x => ++x)
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
// dimulai dari 0
const nums = [...Array.from(10).keys()]
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
@susilolab
susilolab / .env
Last active November 21, 2023 13:02
Fungsi pada async amphp tidak mau lanjut ke fungsi berikutnya jika pake `Emitter` dan lanjut jika pake `Amp\Iterator\map`
DB_HOST=127.0.0.1
DB_USER=user
DB_PASSWD=password
DB_NAME=test
@susilolab
susilolab / DataTable.php
Created November 14, 2023 08:11
Contoh Server Side Processing dengan datatable dan laravel 10
<?php
declare(strict_types=1);
namespace App\Helpers;
use Illuminate\Database\Query\Builder;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
@susilolab
susilolab / log-query.php
Created November 10, 2023 06:32
Log query beserta paramternya pada query builder di laravel 10
<?php
// Sebelum query aktifkan log query
DB::enableQueryLog();
$query = DB::table('demo')->where('id', '=', 1);
// Setelah query get lognya.
Log::error(print_r(DB::getQueryLog(), true));
<div id="canvas"></div>
<style>
#canvas {
width: 500px;
height: 300px;
border: 5px solid black;
position: relative;
box-sizing: content-box;
}
@susilolab
susilolab / static-compile.sh
Created October 22, 2023 13:18
Compile rust secara static binary
#!/bin/bash
RUSTFLAGS='-C target-feature=+crt-static' cargo build --release --target x86_64-unknown-linux-musl
# hasil compile diatas akan bisa dieksekusi disemua os linux
@susilolab
susilolab / jquery-ajax-timeout.js
Created October 20, 2023 16:23
Ajax timeout dengan jQuery
'use strict'
function fetchTimeout(url, timeout, {signal, ...options} = {}) {
function createJqueryAjaxAbortAdapter(signal) {
return function(jqXhr) {
signal.addEventListener("abort", () => {
jqXhr.abort();
});
};
}