Skip to content

Instantly share code, notes, and snippets.

View pagetronic's full-sized avatar
👮‍♂️
Restructuration !

Laurent PAGE pagetronic

👮‍♂️
Restructuration !
View GitHub Profile
@pagetronic
pagetronic / Thumbnailer.java
Created May 16, 2018 16:00
Resize and crop image in base Java ImageIO
package live.page.base.blobstore.utils;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.Sorts;
import live.page.base.db.Db;
import live.page.base.utils.Json;
import live.page.base.utils.Settings;
import org.bson.conversions.Bson;
import org.bson.types.Binary;
@pagetronic
pagetronic / copyfuckers.js
Last active May 18, 2018 06:21
Add source link to copy/paste copyfuckers
var copy = function () {
var article = document.getElementById('article');
if (article != null) {
article.addEventListener('copy', function (e) {
e.preventDefault();
try {
var selection = window.getSelection();
e.clipboardData.setData('text/plain', $('<div/>').html(selection + "").text() + "\n\n" + 'Source: ' + document.location.href);
e.clipboardData.setData('text/html', selection + '<br /><br />Source: <a href="' + document.location.href + '">' + document.title + '</a>');
@pagetronic
pagetronic / Since.java
Created May 16, 2018 16:08
Date in "Since" format
package com.agroneo.web;
public class Since {
public static String since(long durationInit, String lng, int level) {
double DAYS_PER_YEAR = 365.24225D;
double M_PER_SECOND = 1000D;
double M_PER_MINUTE = 60D * M_PER_SECOND;
double M_PER_HOUR = 60D * M_PER_MINUTE;
@pagetronic
pagetronic / since.js
Created May 16, 2018 16:09
Javascript function to display date in "since" format
function since(from, level) {
var durationInit = sys.time - new Date(from).getTime();
var DAYS_PER_YEAR = 365.24225;
var M_PER_SECOND = 1000;
var M_PER_MINUTE = 60 * M_PER_SECOND;
var M_PER_HOUR = 60 * M_PER_MINUTE;
var M_PER_DAY = 24 * M_PER_HOUR;
var M_PER_WEEKS = 7 * M_PER_DAY;
var M_PER_MONTH = Math.floor((DAYS_PER_YEAR / 12) * M_PER_DAY);
var M_PER_YEAR = Math.floor(DAYS_PER_YEAR * M_PER_DAY);
@pagetronic
pagetronic / TropicosApi.java
Created May 16, 2018 16:36
Import Tropicos Mobot data from Tropicos service Api
package gaia.mobot;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.model.Accumulators;
import com.mongodb.client.model.Aggregates;
import com.mongodb.client.model.Filters;
@pagetronic
pagetronic / Aggregator.java
Created May 18, 2018 06:02
Aggregator exemples MongoDb
package live.page.base.db;
import com.mongodb.client.model.Accumulators;
import com.mongodb.client.model.BsonField;
import live.page.base.utils.Json;
import java.util.ArrayList;
import java.util.List;
public class Aggregator extends ArrayList<BsonField> {
@pagetronic
pagetronic / ShortsModels.java
Created January 31, 2022 16:08
Intent modeler
package fr.gendarmerie.docpro.settings.shortcuts;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ShortcutInfo;
import android.graphics.drawable.Icon;
import androidx.annotation.Nullable;
import org.apache.commons.lang3.StringUtils;
/*
* Public Domain @ CPMGN
* Centre de Production Multimédia de la Gendarmerie Nationale
*/
package com.agroneo.grow.system.utils;
import android.os.Handler;
import android.os.Looper;
import java.util.concurrent.ExecutorService;
/*
* Copyright 2019 Laurent PAGE, Apache Licence 2.0
*/
package com.agroneo.grow.system.utils;
import android.text.Html;
import android.text.Spanned;
import androidx.annotation.NonNull;
@pagetronic
pagetronic / events.dart
Last active October 6, 2023 13:09
Flutter Big SQLite && Big ListView with low memory consumption
import 'package:sqflite_common_ffi/sqflite_ffi.dart';
import '../../map/utils/geojson.dart';
import 'objs.dart';
class Event extends DbObject {
String? asset;
int? surface;
int? regna;
int? event;