Skip to content

Instantly share code, notes, and snippets.

C-Duv

Block or report user

Report or block C-Duv

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@C-Duv
C-Duv / 1. How to handle, the unique references,codes,ids in both source code and storage?.md
Last active Aug 29, 2015
How to handle, the unique references/codes/ids in both source code and storage (eg. database, flat file, etc.)?
View 1. How to handle, the unique references,codes,ids in both source code and storage?.md

TL;DR: Say you have, in a website application, a permission system (user can/cannot access specific section). You need a "name" for this permission/right (eg. can_access_admin) which will somehow be used by storage system (to keep track the fact a user has this right) and into source code (to ask fetch into storage to see if user has the right to access admin area). What form this right "name" has? bits? string? How to use it efficiently in source code: as it (copy/paste)? constant?

When designing a website application you oftenly use concepts such as user permission (eg. access to admin area is granted) and preference (eg. maximum number of results to display in projects list) that will be used among all application.

It boils down to a reference/ID in the form of a string (eg. can_access_admin), bit sequence (eg. 10111) or even integer (42) to use in your source code:

  • Where you fetch value/presence from storage
@C-Duv
C-Duv / extract_shell_from_markdown.php
Created May 27, 2015
Markdown to Shell conversion
View extract_shell_from_markdown.php
#!/usr/bin/php
<?php
/**
* Script to extract any Shell commands from a Markdown document
*
* It takes a Markdown stream (from STDIN) and only keeps the "```Shell"-blocks content.
* By adding a Shebang first, the ouput is directly executable.
*/
@C-Duv
C-Duv / foreach_is_modifying_array_cursor_from_outside.php
Created Jul 21, 2015
PHP snippet to highlight an array cursor being modified from outside an object or a class
View foreach_is_modifying_array_cursor_from_outside.php
<?php
/**
* Snippet to highlight an array cursor being modified from outside an object or
* a class
**/
class MyClass
{
protected $arr = [];
@C-Duv
C-Duv / blend_web_mix_2015-create_ics.pl
Last active Oct 24, 2015
Planning ICS du Blend Web Mix 2015
View blend_web_mix_2015-create_ics.pl
#!/usr/bin/perl
#
# Script to create an ICS version of the Blend Web Mix 2015 program (http://www.blendwebmix.com/programme.html)
#
# Parses the program web page, every conference web pages and creates an ICS
#
# @author DUVERGIER Claude (http://blog.claude.duvergier.fr)
use 5.010;
@C-Duv
C-Duv / IndexController.php
Created Jan 3, 2013
Reproduction code for ZF-12494 (http://framework.zend.com/issues/browse/ZF-12494): A class implementing __wakeup() and a controller using it.
View IndexController.php
<?php
class IndexController extends Zend_Controller_Action
{
public function indexAction()
{
switch ($this->_getParam('what', 'test')) {
case 'store': $this->_store(); break;
case 'retrieve': $this->_retrieve(); break;
case 'clear': $this->_clear(); break;
View Exception.php.patch
--- Zend Framework 1.12.1/library/Zend/Session/Exception.php Thu Jan 05 21:35:02 2012
+++ Zend Framework - Fixed/library/Zend/Session/Exception.php Thu Jan 03 03:17:37 2013
@@ -55,7 +55,9 @@
*/
static public function handleSessionStartError($errno, $errstr, $errfile, $errline, $errcontext)
{
- self::$sessionStartError = $errfile . '(Line:' . $errline . '): Error #' . $errno . ' ' . $errstr;
+ if (error_reporting() !== 0) {
+ self::$sessionStartError = $errfile . '(Line:' . $errline . '): Error #' . $errno . ' ' . $errstr;
+ }
@C-Duv
C-Duv / LibreofficeCalc-KiB-to-UpperBinaryPrefixes
Created Dec 13, 2013
Pour LibreOffice Calc : Convertir des Kio en Kio, Mio, Gio, Tio tout en affichant l'unité. Notes : * Dans l'exemple, les Kio sont contenu dans la cellule A1 * Un arrondi est effectué (peut être retiré sans impact autre que visuel)
View LibreofficeCalc-KiB-to-UpperBinaryPrefixes
=SI(
A1/1024>=1;
SI(
A1/1024/1024>=1;
SI(
A1/1024/1024/1024>=1;
CONCATENER(ARRONDI(A1/1024/1024/1024;3);" Tio");
CONCATENER(ARRONDI(A1/1024/1024;3);" Gio")
);
CONCATENER(ARRONDI(A1/1024;3);" Mio")
@C-Duv
C-Duv / script_device_MPD_Radio.lua
Last active Dec 9, 2017
A LUA script for Domoticz that controls an MPD server volume (via `mpc` client) under the orders of a dummy Domoticz dimmer
View script_device_MPD_Radio.lua
--
-- LUA script for Domoticz that controls an MPD server (via `mpc` client) under
-- the orders of a dummy Domoticz dimmer device.
--
-- No configuration required on the device, the LUA script listen to order such
-- as "Set Level: 42 %" and sends adequate `mpc volume` commands.
--
commandArray = {}
-- Name of the dummy Domoticz dimmer:
@C-Duv
C-Duv / 0.Notes.md
Created Aug 1, 2017
Example for Docker Swarm, Let's Encrypt and Nginx setup with no Nginx down time (answer to https://twitter.com/developius/status/892470102632923136)
View 0.Notes.md
@C-Duv
C-Duv / mongoose-gh7608-pass_data_from_debug_to_post_hook.js
Created Mar 14, 2019
Mongoose - GH7608: Pass data from debug to post hook
View mongoose-gh7608-pass_data_from_debug_to_post_hook.js
const { MongoMemoryServer } = require('mongodb-memory-server');
const mongoose = require('mongoose');
const mongoServer = new MongoMemoryServer({
'instance': {
'dbName': 'temp',
'port': 35555,
}
});
You can’t perform that action at this time.