Skip to content

Instantly share code, notes, and snippets.

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

Laurent PAGE pagetronic

👮‍♂️
Restructuration !
View GitHub Profile
/*
* Copyright 2019 Laurent PAGE, Apache Licence 2.0
*/
package live.page.hubd.system.socket;
import com.mongodb.CursorType;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.model.CreateCollectionOptions;
/*
* Copyright 2019 Laurent PAGE, Apache Licence 2.0
*/
package live.page.hubd.content.notices;
import com.mongodb.client.model.*;
import live.page.hubd.system.Settings;
import live.page.hubd.system.db.Db;
import live.page.hubd.system.db.utils.AggregateUtils;
import live.page.hubd.system.db.utils.Aggregator;
package com.agroneo.web.gaia.events;
import com.agroneo.web.gaia.utils.GaiaView;
import com.mongodb.client.model.Aggregates;
import com.mongodb.client.model.Field;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.IndexModel;
import live.page.hubd.content.notices.NoticesExtender;
import live.page.hubd.content.notices.NoticesView;
import live.page.hubd.system.db.Db;
@pagetronic
pagetronic / helper.dart
Created July 24, 2025 11:48
Contextual help for Flutter
import 'dart:math';
import 'package:flutter/material.dart';
import 'package:hubd/data/settings.dart';
import 'package:hubd/utils/base/fx.dart';
import 'package:hubd/utils/language.dart';
const String _saveKey = "helps_viewed";
const Duration _duration = Duration(milliseconds: 250);
const Curve _curve = Curves.ease;
@pagetronic
pagetronic / list_api_nested.dart
Last active June 25, 2025 08:17
Flutter nested sortable list
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_sticky_header/flutter_sticky_header.dart';
import 'package:hubd/api/api.dart';
import 'package:hubd/data/settings.dart';
import 'package:hubd/lists/lists_utils.dart';
import 'package:hubd/lists/lists_view.dart';
import 'package:hubd/utils/async.dart';
@pagetronic
pagetronic / WikiCommonDateParser.java
Last active October 4, 2024 10:22
Parse complex wikiSyntax date
package live.page.utils;
import com.drew.imaging.ImageMetadataReader;
import com.drew.metadata.Metadata;
import com.drew.metadata.exif.ExifSubIFDDirectory;
import live.page.hubd.blobs.Blob;
import live.page.hubd.system.json.Json;
import java.text.SimpleDateFormat;
import java.util.Date;
package org.agroneo.web.oauth;
import jakarta.servlet.annotation.WebServlet;
import live.page.hubd.system.Settings;
import live.page.hubd.system.servlet.wrapper.WebServletRequest;
import live.page.hubd.system.servlet.wrapper.WebServletResponse;
import live.page.hubd.system.sessions.OAuthServlet;
import live.page.hubd.system.sessions.Users;
import live.page.hubd.system.sessions.oauth.OauthDatas;
import live.page.hubd.system.sessions.oauth.OauthUtils;
@pagetronic
pagetronic / WikiLocation.java
Last active August 29, 2024 18:09
Commons wikimedia to Json
package live.page.wiki;
import live.page.hubd.system.json.Json;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class WikiLocation {
public static List<Double> findLocation(Json data) {
import 'dart:async';
class Deferrer {
final int milliseconds;
Future? _next;
Deferrer(this.milliseconds);
void defer(void Function() toDo) {
Future? next_;
@pagetronic
pagetronic / aync.dart
Created November 1, 2023 10:54
FutureOrBuilder
import 'dart:async';
import 'package:flutter/widgets.dart';
class FutureOrBuilder<T> extends StatelessWidget {
final FutureOr<T?> future;
final Widget Function(BuildContext context, AsyncSnapshot<T?> snapshot) builder;
const FutureOrBuilder({super.key, required this.builder, required this.future});