Skip to content

Instantly share code, notes, and snippets.

View tpokorra's full-sized avatar

Timotheus Pokorra tpokorra

View GitHub Profile
@tpokorra
tpokorra / addDomain.php
Last active December 15, 2015 10:19
preparing Kolab for multi domain operation; for more details see http://www.tbits.net/tbits-opensource/kolab3multipledomains.html
<?php
$hosted_domain = isset($argv[1])?$argv[1]:"";
$ldappassword = isset($argv[2])?$argv[2]:"";
$hosted_domain_root_dn="dc=".implode(",dc=",explode(".", $hosted_domain));
# Do we have all infos to continue?
if($hosted_domain=="" || $hosted_domain_root_dn=="" || $ldappassword == "") {
die("Usage: ".$argv[0]." <hosted domain> <ldappasswd>\n".
"e.g. ".$argv[0]." kolab.example.org secret\n");
}
@tpokorra
tpokorra / skiplist_upgrade32_to_64bit.py
Last active December 17, 2015 17:08
fix a problem with skiplist of Cyrus IMAP annotations.db for Kolab, moving from 32 bit to 64 bit server
#!/usr/bin/env python
# -*- Mode: Python; tab-width: 4 -*-
#
# Cyrus Imapd Skiplist db recovery tool
#
# Copyright (C) 2004-2006 Gianluigi Tiesi <[email protected]>
# Copyright (C) 2004-2006 NetFarm S.r.l. [http://www.netfarm.it]
# Copyright (C) 2013 TBits.net (http://www.tbits.net)
#
# This program is free software; you can redistribute it and/or modify
@tpokorra
tpokorra / buildNightlyKolabRPMS.sh
Last active December 18, 2015 00:39
build script for nightly builds of Kolab based on git.kolab.org master; the building happens at https://obs.kolabsys.com/project/show?project=home%3Atpokorra%3Abranches%3AKolab%3ADevelopment
#!/bin/bash
eval `ssh-agent`
ssh-add ~/.ssh/id_rsa
cd ~/osc/home:tpokorra:branches:Kolab:Development
TODAY=`date +%Y%m%d`
YESTERDAY=`date -d '1 day ago' +%Y%m%d`
#YESTERDAY=20140611
@tpokorra
tpokorra / kolabrss.php
Last active December 18, 2015 02:38
this script is used for creating an RSS feed from Typo3 pages, without touching the Typo3 installation
<?php
function getContent(&$contents, $startContentStr, $endContentStr)
{
// if we want the content of an html element, we need to count, eg. the div's
$element = '';
if ($startContentStr[0] == '<' && substr($endContentStr, 0, 2) == '</')
{
$posSpace = strpos($startContentStr, ' ');
<?php
function set_var($var)
{
global $$var;
if(isset($_REQUEST[$var]))
$$var=$_REQUEST[$var];
else
$$var="";
}
@tpokorra
tpokorra / patchDomainAdmins.patch
Created June 25, 2013 11:22
domainadmin patch for Kolab trunk
diff -uNr kolab-webadmin.orig/lib/api/kolab_api_service_domain_types.php kolab-webadmin/lib/api/kolab_api_service_domain_types.php
--- kolab-webadmin.orig/lib/api/kolab_api_service_domain_types.php 2013-06-18 11:33:48.542736382 +0200
+++ kolab-webadmin/lib/api/kolab_api_service_domain_types.php 2013-06-18 11:34:09.088733566 +0200
@@ -64,6 +64,10 @@
'associateddomain' => array(
'type' => 'list',
),
+ 'domainadmin' => array(
+ 'type' => 'list',
+ 'optional' => 'true',
@tpokorra
tpokorra / _patchQuotaEdit.patch
Last active December 18, 2015 22:58
Kolab webadmin: select a unit, eg. KB, MB or GB for the quota to be stored
diff -uNr kolab-webadmin.orig/lib/api/kolab_api_service_user.php kolab-webadmin/lib/api/kolab_api_service_user.php
--- kolab-webadmin.orig/lib/api/kolab_api_service_user.php 2013-06-18 11:33:48.541736452 +0200
+++ kolab-webadmin/lib/api/kolab_api_service_user.php 2013-06-25 13:37:54.989123228 +0200
@@ -125,6 +125,13 @@
{
//console("\$postdata to user_edit()", $postdata);
+ if ($postdata['mailquota-unit'] == 'gb') {
+ $postdata['mailquota'] *= 1024*1024;
+ }
<?php
// get from here: https://github.com/tfnet/jiffy-api-php-client/blob/master/JiffyBoxApi.class.php
require "JiffyBoxApi.class.php";
$token = "INSERT YOUR TOKEN HERE";
$id=INSERT YOU jiffybox id HERE;
$planid=20;
$hours=2;
if (!empty($argc) && strstr($argv[0], basename(__FILE__)))
{
@tpokorra
tpokorra / testimap.php
Last active December 21, 2015 20:59
testing the imap flags and acl permissions
<?php
// centos: yum install php-imap
$host="localhost";
$mbox = imap_open("{".$host.":993/imap/ssl/novalidate-cert}INBOX", "[email protected]", "test");
if ($mbox== null) die("mbox is null");
$folders = imap_listmailbox($mbox, "{".$host.":993}", "*");
echo "<pre>folders: ".print_r($folders,true)."</pre>";
$headers = imap_headers($mbox);
@tpokorra
tpokorra / fixannotations.sh
Created October 1, 2013 08:49
Kolab: fixes CyrusIMAP problems with 32 bit to 64 bit migration, annotations.db folder-type
# call with domain name as parameter, eg. ./fixannotations.sh mydomain.org
domain="user/*@$1"
acceptedFolderTypes=(
"event" "event.default"
"contact" "contact.default"
"note" "note.default"
"task" "task.default"
"journal" "journal.default"
"mail.outbox" "mail.sentitems" "text/plain")