Skip to content

Instantly share code, notes, and snippets.

Avatar

ePirat ePirat

View GitHub Profile
View gist:9937111
<?php
function dirtyHeaderParser($headers, $strict = true){
$arr = array();
$s = strtok($headers, ':');
while ($s){
if ( ($s[0] === ' ') || ($s[0] === "\t") ){
if (count($arr) != 0){
$tail = strtok('');
$tail = "{$s}:{$tail}";
@ePirat
ePirat / CodeStyle.md
Last active Aug 29, 2015
C Coding Style proposal for Icecast
View CodeStyle.md

C Coding Style

Proposal for Icecast

Formatting

Indent with (4) spaces, no tabs.
A Line Should Not Exceed 80 Characters.

Brace Placement

All if, while, for and do statements should either have braces or be on a single line. Do not put parens next to keywords. Put a space between.

View keybase.md

Keybase proof

I hereby claim:

  • I am ePirat on github.
  • I am epirat (https://keybase.io/epirat) on keybase.
  • I have a public key whose fingerprint is 66DF 0B23 CE79 3C28 0922 62E1 3EBF 06BE 1FF9 645A

To claim this, I am signing this object:

@ePirat
ePirat / parse_playlist.php
Last active Aug 29, 2015
Ice PlaylistParser
View parse_playlist.php
#!/usr/bin/php
<?php
if (php_sapi_name() == "cli") {
// If this is executed via CLI, parse options and stuff
// Helper
function report_error($e) {
// Get the current script name
$our_name = (($v =strrchr(__FILE__, DIRECTORY_SEPARATOR)) == FALSE)
? __FILE__
@ePirat
ePirat / help.md
Created Feb 27, 2015
Buy something on Steam while in another Country
View help.md

Recently I had to buy something on Steam while in another Country. Turns out it was impossible, because the country information of my Payment method differs from the Country selected based on my IP Address. So I contacted the Steam support, and they advised me to pass a special Argument to the URL when visiting the Steam Store through a Webbrowser:

http://store.steampowered.com/?cc=<countrycode>

Replace <countrycode> with a 2 character country code, for example:

http://store.steampowered.com/?cc=DE

@ePirat
ePirat / Test.scpt
Created Aug 8, 2011
AppleScript Fun
View Test.scpt
set txt to "line 1
line 2
Xeon3D 3
line 4"
set txtlist to paragraphs of txt
repeat with theLine in txtlist
if theLine contains "Xeon3D" then
return theLine as text
@ePirat
ePirat / nowpaying.scpt
Created Aug 11, 2011
Crap Script © ePirat
View nowpaying.scpt
-- by MacScripter User Nigel Garvey
on switchText(t, r, s)
set d to text item delimiters
set text item delimiters to s
set t to t's text items
set text item delimiters to r
tell t to set t to item 1 & ({""} & rest)
set text item delimiters to d
t
end switchText
@ePirat
ePirat / watermark.php
Created Nov 16, 2011
Wasserzeichen (PHP)
View watermark.php
<?php
function PlaceWatermark($file, $text, $xxx, $yyy, $op, $outdir) {
require_once('fpdf.php');
require_once('fpdi.php');
$name = uniqid();
$font_size = 5;
$ts=explode("\n",$text);
$width=0;
foreach ($ts as $k=>$string) {
$width=max($width,strlen($string));
@ePirat
ePirat / newsfix.user.js
Created Nov 28, 2011
Fix clearing search bar when switching to Google News
View newsfix.user.js
// ==UserScript==
// @name Google News Query Save
// @namespace ePirat
// @description Fixes that you have to re-enter the search term when you click "News" link
// @include http*://google.com/*
// @include http*://google.ae/*
// @include http*://google.com.af/*
// @include http*://google.com.ag/*
// @include http*://google.off.ai/*
// @include http*://google.am/*
@ePirat
ePirat / Parser.js
Created Jan 16, 2013
Link header parser (JavaScript)
View Parser.js
var PageLinks = function(linkHeader) {
var ProfileRel = "https://tent.io/rels/profile";
var final = [];
var links = linkHeader.split(",");
if (links.length < 2)
links[0] = linkHeader;
for (link in links) {
link = links[link];
var segments = link.split(";");
if (segments.length < 2)