Skip to content

Instantly share code, notes, and snippets.

@herdianf
herdianf / constructor.js
Created August 9, 2021 21:14
constructor.js
function createObject(constructor, argArray) {
var args = [null].concat(argArray);
var factoryFunction = constructor.bind.apply(constructor, args);
return new factoryFunction();
}
function parseDate(dateStr) {
var args = dateStr.split(/[^0-9]+/).map((number,index) => parseInt(number) - (index === 1 ? 1 : 0)));
var dt = createObject(Date, args);
return dt;
@herdianf
herdianf / tselads.js
Created October 5, 2020 14:59
Telkomsel Insertion Ads
var mim_careless = 0;
var mim_union = false, minPicSize = 10;
var excludeAids = ['4740', '5033', '5034'];
var isAllSelfBtn = false;
var tipText = 'Halaman ini akan otomatis tertutup beberapa saat dan dapat dikenakan tariff data standar';
if(typeof(mim_params)!=="object"){
var mim_params = {};
}
if (!Array.prototype.indexOf) {
Array.prototype.indexOf = function(elt /*, from*/){
@herdianf
herdianf / itunes_categories.json
Created July 31, 2019 15:01
iTunes Category List
[
["Arts", [
"Design",
"Fashion & Beauty",
"Food",
"Literature",
"Performing Arts",
"Visual Arts"
]],
["Business", [
@herdianf
herdianf / wp.conf
Created July 31, 2019 08:08
Nginx for Wordpress
#php.conf
fastcgi_split_path_info ^(.+\.php)(.*)$;
try_files $uri $fastcgi_script_name =404;
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_param HTTP_PROXY "";
include fastcgi.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
@herdianf
herdianf / dumpoverssh.sh
Created June 16, 2019 09:38 — forked from kirkegaard/dumpoverssh.sh
pipe a mysql dump through gzip and send it over ssh
mysqldump -u MYSQL_USERNAME -p YOUR_DATABASE | gzip -c | ssh USERNAME@YOUR_TO_HOST 'cat > ~/dump.sql.gz'
@herdianf
herdianf / prepare.js
Created May 31, 2019 08:25
Prepare Puppetter for Browse
const preparePageForTests = async (page) => {
await page.setJavaScriptEnabled(true);
const userAgent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36';
await page.setUserAgent(userAgent);
await page.evaluateOnNewDocument(() => {
Object.defineProperty(navigator, 'webdriver', {
get: () => false,
});
@herdianf
herdianf / onelinemap.java
Created August 24, 2018 03:31
Create a Map with just one line
Object data = new Date();
Map<String,Object> map = Arrays.asList(new Object[][] {
{ "data", data },
{ "success", true }
}).stream().collect(Collectors.toMap(k -> (String)k[0], v -> v[1]))
@herdianf
herdianf / addevent.js
Created July 18, 2018 15:53
JS Add Event
//from here
//https://stackoverflow.com/questions/10149963/adding-event-listener-cross-browser
//by https://stackoverflow.com/users/816620/jfriend00
//with some mods
// add event cross browser
function addEvent(elem, event, fn) {
// avoid memory overhead of new anonymous functions for every event handler that's installed
// by using local functions
function listenHandler(e) {
@herdianf
herdianf / setup.sh
Created February 12, 2018 03:49
Setup Basic Nodejs Frontend App
npm init -y
npm i babel-core babel-preset-env babel-loader babel-preset-es2015 webpack webpack-config-utils webpack-dev-server webpack-dev-middleware webpack-hot-middleware webpack-node-externals html-webpack-plugin extract-text-webpack-plugin copy-webpack-plugin copy-webpack-plugin style-loader css-loader sass-loader node-sass cross-env rimraf --save-dev
@herdianf
herdianf / ciaclient.java
Created June 9, 2017 05:45
Cia Deduplication
private Map<String, Object> processResponse(Map<String, Object> map,
final String payload) {
//noinspection unchecked
final List<Map<String, Object>> namedEntities = (List<Map<String, Object>>) map.remove("namedEntities");
final List<Map<String, Object>> semanticKeywords = (List<Map<String, Object>>) map.remove("semanticKeywords");
final List<Map<String, Object>> taxonomies = (List<Map<String, Object>>) map.remove("taxonomy");
//filter duplicates
List<Map<String,Object>> entities = new ArrayList<Map<String, Object>>();
Map<String,Object> keys = new HashMap<String, Object>();