Merge remote branch 'upstream/master'

pull/62/head
Michael Vogel 2012-05-16 08:25:08 +02:00
commit 38caf9dd1d
27 changed files with 46 additions and 136 deletions

Binary file not shown.

View File

@ -1,7 +1,7 @@
<?php <?php
/** /**
* Name: blackout * Name: blackout
* Description: Blackout your ~friendica node during a given period * Description: Blackout your ~friendica node during a given period, requires PHP >= 5.3
* License: MIT * License: MIT
* Version: 1.0 * Version: 1.0
* Author: Tobias Diekershoff <https://diekershoff.homeunix.net/friendika/~tobias> * Author: Tobias Diekershoff <https://diekershoff.homeunix.net/friendika/~tobias>
@ -62,6 +62,10 @@ function blackout_redirect ($a, $b) {
if (local_user()) { if (local_user()) {
return true; return true;
} }
if (! (version_compare(PHP_VERSION, '5.3.0') >= 0))
return true;
// else... // else...
$mystart = get_config('blackout','begindate'); $mystart = get_config('blackout','begindate');
$myend = get_config('blackout','enddate'); $myend = get_config('blackout','enddate');

Binary file not shown.

View File

@ -1,4 +0,0 @@
.hanga {font:bold 14pt Courier, "Courier New", monospace;text-align:center;}
.hangt {font:normal 16pt Courier, "Courier New", monospace;text-align:center;color:#efefef;}
.hangb {width:800px;height:430px;overflow:hidden;background:#777;border:#000000 1px solid;}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 387 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 427 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 498 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 443 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 447 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 463 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 474 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 481 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 483 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 495 B

View File

@ -1,51 +0,0 @@
var img = ''
var opts = new Array(); var r = 0;
opts[r++] = '^!33#`4!<^#`/9~1$4>-';
opts[r++] = '#:#0# 9 66@28?>0?/@+';
opts[r++] = '@!45::!@9/5/1>*5_2>7';
opts[r++] = '1`-52:#<<9_`2:2#8/9!';
opts[r++] = '4! $:5 $9_=^+59-9:25';
opts[r++] = '1+`2-52+-<917:0*!1#3';
opts[r++] = '65<@#::! /9<6649 *6>';
opts[r++] = '6+4#`!25+ 9_7^2?~:+<';
opts[r++] = '1-`250#:/933:5!>679 ';
opts[r++] = '^!88# <2! @#99/*_^`>';
opts[r++] = '!68:52-4#9_53*24:$>4';
opts[r++] = '$!`$! 2-! 9+$$~+71?$';
opts[r++] = '#:#8^! 2525<9--4>~-+';
opts[r++] = '2#<25@-:!`9:335^~+9/';
opts[r++] = '8+45!2`5<294 57#52#6';
opts[r++] = '@!`45+:+$/9_@4` -42`';
opts[r++] = '2#68#<2-+-<933$=4@`~';
opts[r++] = '5 @+ <+:!3:#9-~$8+-+';
opts[r++] = '- @+ <@5+ !3:#957?=1';
opts[r++] = '<5 5<2#`9`58$$462$!9';
opts[r++] = '8+`2# 25+-<99<^4<14*';
opts[r++] = '^!33#`4!<^#`/9$5-<$3';
opts[r++] = '6+`25@5! 9<:**6 *!`<';
opts[r++] = '1!::+85! 9181+!>$8- ';
opts[r++] = '>+`@#<2#`<^5`#91>!=?';
opts[r++] = '6!$ 515@# 29+:21<!6!';
opts[r++] = '- @+ <+:!3:#9^35 6=*';
opts[r++] = '8#<<565<25@9`6@2^6$*';
opts[r++] = '@!852!:92^-@#/@018+7';
opts[r++] = '4#<8#`!2#9-?!/-__110';
opts[r++] = '!8!2^#25@9?=3=_$#95^';
opts[r++] = '1+`<!~# 90:6//>?750+';
opts[r++] = '45<@+ <+:!2#9//_*35$';
opts[r++] = '^+``515@92/>@5:?5_@4';
opts[r++] = '<+:52-4#9+#8>?6_4#*7';
opts[r++] = '568#`@#8253:#96+?0!@';
opts[r++] = '8525!3:#917_~ 2^16!*';
opts[r++] = '@/ 5@!:9!32`20#?6^@3';
opts[r++] = '@+ 4#6 #494`0`-`2-~=';
opts[r++] = '4#<+:!2#96@@<*^:!/~=';
opts[r++] = ':-$-3`5+-<9_*3=*?842';
opts[r++] = '4#<8+ 4# 2902+83>#8^';
opts[r++] = ' #@`+25@95?3<_+`*+3^';
opts[r++] = '1- #3`5+-<90*@>3?-->';
opts[r++] = ':!6# 2!3:#9>6/9@_6>3';
opts[r++] = '+352-!`/9 #9~--1<<1<';
opts[r++] = '@`565 !:95^@3701#$~$';
opts[r++] = '6#:! @^+:/9>:<4_$/>@';

View File

@ -1,22 +0,0 @@
// Hangman Javascript
// copyright 10th June 2005, 8th December 2005 by Stephen Chapman
// permission to use this Javascript on your web page is granted
// provided that all of the code in this script (including these
// comments) is used without any alteration
var page = self.location.toString(); page = page.substr(0,page.indexOf('?'));
var qsParm = new Array();function qs() {var query = window.location.search.substring(1);var parms = query.split('&');for (var i=0; i<parms.length; i++) {var pos = parms[i].indexOf('=');if (pos > 0) {var key = parms[i].substring(0,pos);var val = parms[i].substring(pos+1);qsParm[key] = val;}}}
qsParm['opt'] = null;qsParm['al'] = null;qsParm['w'] = null;qs();
var win = 0;if (qsParm['win']) win = parseInt(qsParm['win']);
var opt = -1;if (qsParm['opt']) opt = qsParm['opt']%71; else opt = Math.floor(Math.random()*opts.length);
var al = '--------------------------';if (qsParm['al']) al = qsParm['al'];
var wr = 'xhwdarqpnez';var dc = '7!3@4#1$^5*~:6 +8=`<2-0>_/?9';
var wx = 0; if (qsParm['w']) wx = wr.indexOf(qsParm['w']);
var answer = trans2(opts[opt]);
function trans2(op) {var opn = '';for (var i = 0; i < op.length; i++) {var ch = op.substr(i,1);if (ch == dc.substr(27,1)) break; if (ch == dc.substr(0,1)) opn += ' '; else opn += String.fromCharCode(dc.indexOf(ch)+64);} return opn;}
function selectLetter(s) {s = parseInt(s); var ch = String.fromCharCode(s+65); if (answer.indexOf(ch) == -1) wx++; al = al.substring(0,s) + ch + al.substring(s+1,al.length); var opty = Math.floor(Math.random()*165)*71 + opt; top.location = page + '?opt='+opty+'&al='+al+'&w=' +wr.charAt(wx); return false;}
function availLetter() {document.write('<div class="hangt">'); for (var i = 0; i < al.length; i++) {
var ltr = String.fromCharCode(i+65); if (al.charAt(i) == ltr) document.write(' '); else document.write('<a href="#" onclick="selectLetter(\''+i+'\')">'+ ltr+'<\/a> '); if (i == 12) document.write('<br \/>');} document.write('<\/div>');}
function displayAnswer() {var correct = ''; document.write('<div class="hanga"> <br \/>'); for (var i = 0; i < answer.length; i++) {if (answer.substr(i,1) == ' ') {document.write(' '); correct += ' ';} else {var ltr = ''; if (win == 0) ltr = al.charAt(answer.charCodeAt(i)-65); else ltr = answer.substr(i,1); document.write(ltr + ' '); correct += ltr;}} document.write('<\/div>'); if (win == 0) {var opty = Math.floor(Math.random()*165)*71 + opt; if (wr.charAt(wx) == 'z') top.location = page + '?win=1&opt='+opty+'&w='+wr.charAt(wx); if (correct == answer.toUpperCase()) top.location = page + '?win=4&opt='+ opty+'&w='+wr.charAt(wx);}}
document.write('<div class="hangb">'); if (win == 0) availLetter(); else if (win == 4) document.write('<div class="hangt">YOU WIN<br \/><a href="'+page+'">Try Again<\/a><\/div>'); else document.write('<div class="hangt">YOU LOSE<br \/><a href="'+page+'">Try Again<\/a><\/div>'); document.write('<div align="center"> <br \/><img src="'+img+'hang'+wx+'.gif" width="100" height="100" alt="hangman image '+wx+'" \/><br \/> <\/div>'); displayAnswer(); document.write('<\/div>');

View File

@ -1,49 +0,0 @@
<?php
/**
* Name: Hangman Plugin
* Description: spell words, hang dudes
* Version: 1.0
* Author: tony baldwin <https://free-haven.org/profile/tony>
*/
function hangman_install() {
register_hook('app_menu', 'addon/hangman/hangman.php', 'hangman_app_menu');
}
function hangman_uninstall() {
unregister_hook('hangman_menu', 'addon/hangman/hangman.php', 'hangman_app_menu');
}
function hangman_app_menu($a,&$b) {
$b['app_menu'][] = '<div class="app-title"><a href="hangman">' . t('Hangman') . '</a></div>';
}
function hangman_module() {
return;
}
function hangman_content(&$a) {
$baseurl = $a->get_baseurl() . '/addon/hangman';
$a->page['htmlhead'] .= '<link rel="stylesheet" href="' .$a->get_baseurl() . '/addon/hangman/hang.css' . '" type="text/css" />' . "\r\n";
$a->page['htmlhead'] .= '<script src="' .$a->get_baseurl() . '/addon/hangman/hangans.js' .'" type="text/javascript"> </script>' . "\r\n";
$o = '';
$o .= <<< EOT
<script src="$baseurl/hangman.js" type="text/javascript">
</script><noscript><div align="center"><b>The Hangman
game requires Javascript</b><br />You either have
Javascript disabled<br />or the browser you are using does
not<br />support Javascript. Please use a Javascript
<br />enabled browser to access this game.</div></noscript>
EOT;
return $o;
}

BIN
nsfw.tgz

Binary file not shown.

View File

@ -94,7 +94,8 @@ function nsfw_prepare_body(&$a,&$b) {
$found = false; $found = false;
if(count($arr)) { if(count($arr)) {
foreach($arr as $word) { foreach($arr as $word) {
if(! strlen(trim($word))) { $word = trim($word);
if(! strlen($word)) {
continue; continue;
} }
if(strpos($word,'/') === 0) { if(strpos($word,'/') === 0) {

Binary file not shown.

View File

@ -342,7 +342,7 @@ function statusnet_settings(&$a,&$s) {
$s .= '<label id="statusnet-default-label" for="statusnet-default">'. t('Send public postings to StatusNet by default') .'</label>'; $s .= '<label id="statusnet-default-label" for="statusnet-default">'. t('Send public postings to StatusNet by default') .'</label>';
$s .= '<input id="statusnet-default" type="checkbox" name="statusnet-default" value="1" ' . $defchecked . '/>'; $s .= '<input id="statusnet-default" type="checkbox" name="statusnet-default" value="1" ' . $defchecked . '/>';
$s .= '<div class="clear"></div>'; $s .= '<div class="clear"></div>';
$s .= '<label id="statusnet-sendtaglinks-label" for="statusnet-sendtaglinks">'.t('Send #tag links to StatusNet').'</label>'; $s .= '<label id="statusnet-sendtaglinks-label" for="statusnet-sendtaglinks">'.t('Send linked #-tags and @-names to StatusNet').'</label>';
$s .= '<input id="statusnet-sendtaglinks" type="checkbox" name="statusnet-sendtaglinks" value="1" '. $linkschecked . '/>'; $s .= '<input id="statusnet-sendtaglinks" type="checkbox" name="statusnet-sendtaglinks" value="1" '. $linkschecked . '/>';
$s .= '</div><div class="clear"></div>'; $s .= '</div><div class="clear"></div>';
@ -453,7 +453,10 @@ function statusnet_post_hook(&$a,&$b) {
// that is, don't send if the option is not set in the // that is, don't send if the option is not set in the
// connector settings // connector settings
if ($linksenabled=='0') { if ($linksenabled=='0') {
// #-tags
$tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $tmp); $tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $tmp);
// @-mentions
$tmp = preg_replace( '/@\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '@$2', $tmp);
} }
// preserve links to webpages // preserve links to webpages
$tmp = preg_replace( '/\[url\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/url\]/i', '$2 $1', $tmp); $tmp = preg_replace( '/\[url\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/url\]/i', '$2 $1', $tmp);
@ -489,9 +492,14 @@ function statusnet_post_hook(&$a,&$b) {
$msg = implode(' ', $e); $msg = implode(' ', $e);
$msg .= '... ' . $shortlink; $msg .= '... ' . $shortlink;
} }
// and now tweet it :-) // and now dent it :-)
if(strlen($msg)) if(strlen($msg)) {
$dent->post('statuses/update', array('status' => $msg)); $result = $dent->post('statuses/update', array('status' => $msg));
logger('statusnet_post send, result: ' . print_r($result, true), LOGGER_DEBUG);
if ($result->error) {
logger('Send to StatusNet failed: "' . $result->error . '"');
}
}
} }
} }

Binary file not shown.

View File

@ -198,7 +198,7 @@ function twitter_settings(&$a,&$s) {
$s .= '<label id="twitter-default-label" for="twitter-default">'. t('Send public postings to Twitter by default') .'</label>'; $s .= '<label id="twitter-default-label" for="twitter-default">'. t('Send public postings to Twitter by default') .'</label>';
$s .= '<input id="twitter-default" type="checkbox" name="twitter-default" value="1" ' . $defchecked . '/>'; $s .= '<input id="twitter-default" type="checkbox" name="twitter-default" value="1" ' . $defchecked . '/>';
$s .= '<div class="clear"></div>'; $s .= '<div class="clear"></div>';
$s .= '<label id="twitter-sendtaglinks-label" for="twitter-sendtaglinks">'.t('Send #tag links to Twitter').'</label>'; $s .= '<label id="twitter-sendtaglinks-label" for="twitter-sendtaglinks">'.t('Send linked #-tags and @-names to Twitter').'</label>';
$s .= '<input id="twitter-sendtaglinks" type="checkbox" name="twitter-sendtaglinks" value="1" '. $linkschecked . '/>'; $s .= '<input id="twitter-sendtaglinks" type="checkbox" name="twitter-sendtaglinks" value="1" '. $linkschecked . '/>';
$s .= '</div><div class="clear"></div>'; $s .= '</div><div class="clear"></div>';
@ -319,7 +319,10 @@ function twitter_post_hook(&$a,&$b) {
// that is, don't send if the option is not set in the // that is, don't send if the option is not set in the
// connector settings // connector settings
if ($linksenabled=='0') { if ($linksenabled=='0') {
// #-tags
$tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $tmp); $tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $tmp);
// @-mentions
$tmp = preg_replace( '/@\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '@$2', $tmp);
} }
$tmp = preg_replace( '/\[url\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/url\]/i', '$2 $1', $tmp); $tmp = preg_replace( '/\[url\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/url\]/i', '$2 $1', $tmp);
$tmp = preg_replace( '/\[bookmark\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/bookmark\]/i', '$2 $1', $tmp); $tmp = preg_replace( '/\[bookmark\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/bookmark\]/i', '$2 $1', $tmp);
@ -357,7 +360,10 @@ function twitter_post_hook(&$a,&$b) {
// and now tweet it :-) // and now tweet it :-)
if(strlen($msg)) { if(strlen($msg)) {
$result = $tweet->post('statuses/update', array('status' => $msg)); $result = $tweet->post('statuses/update', array('status' => $msg));
logger('twitter_post send' , LOGGER_DEBUG); logger('twitter_post send, result: ' . print_r($result, true), LOGGER_DEBUG);
if ($result->error) {
logger('Send to Twitter failed: "' . $result->error . '"');
}
} }
} }
} }

Binary file not shown.

View File

@ -1,11 +1,13 @@
#wppost-enable-label, #wppost-username-label, #wppost-password-label, #wppost-blog-label, #wppost-bydefault-label { #wppost-enable-label, #wppost-username-label, #wppost-password-label,
#wppost-blog-label, #wppost-bydefault-label, #wppost-backlink-label {
float: left; float: left;
width: 200px; width: 200px;
margin-top: 10px; margin-top: 10px;
} }
#wppost-checkbox, #wppost-username, #wppost-password, #wppost-blog, #wppost-bydefault { #wppost-checkbox, #wppost-username, #wppost-password,
#wppost-blog, #wppost-bydefault, #wppost-backlink {
float: left; float: left;
margin-top: 10px; margin-top: 10px;
} }

View File

@ -60,8 +60,10 @@ function wppost_settings(&$a,&$s) {
$checked = (($enabled) ? ' checked="checked" ' : ''); $checked = (($enabled) ? ' checked="checked" ' : '');
$def_enabled = get_pconfig(local_user(),'wppost','post_by_default'); $def_enabled = get_pconfig(local_user(),'wppost','post_by_default');
$back_enabled = get_pconfig(local_user(),'wppost','backlink');
$def_checked = (($def_enabled) ? ' checked="checked" ' : ''); $def_checked = (($def_enabled) ? ' checked="checked" ' : '');
$back_checked = (($back_enabled) ? ' checked="checked" ' : '');
$wp_username = get_pconfig(local_user(), 'wppost', 'wp_username'); $wp_username = get_pconfig(local_user(), 'wppost', 'wp_username');
$wp_password = get_pconfig(local_user(), 'wppost', 'wp_password'); $wp_password = get_pconfig(local_user(), 'wppost', 'wp_password');
@ -95,6 +97,11 @@ function wppost_settings(&$a,&$s) {
$s .= '<div id="wppost-bydefault-wrapper">'; $s .= '<div id="wppost-bydefault-wrapper">';
$s .= '<label id="wppost-bydefault-label" for="wppost-bydefault">' . t('Post to WordPress by default') . '</label>'; $s .= '<label id="wppost-bydefault-label" for="wppost-bydefault">' . t('Post to WordPress by default') . '</label>';
$s .= '<input id="wppost-bydefault" type="checkbox" name="wp_bydefault" value="1" ' . $def_checked . '/>'; $s .= '<input id="wppost-bydefault" type="checkbox" name="wp_bydefault" value="1" ' . $def_checked . '/>';
$s .= '<div id="wppost-backlink-wrapper">';
$s .= '<label id="wppost-backlink-label" for="wppost-backlink">' . t('Provide a backlink to the Friendica post') . '</label>';
$s .= '<input id="wppost-backlink" type="checkbox" name="wp_backlink" value="1" ' . $back_checked . '/>';
$s .= '</div><div class="clear"></div>'; $s .= '</div><div class="clear"></div>';
/* provide a submit button */ /* provide a submit button */
@ -113,6 +120,7 @@ function wppost_settings_post(&$a,&$b) {
set_pconfig(local_user(),'wppost','wp_username',trim($_POST['wp_username'])); set_pconfig(local_user(),'wppost','wp_username',trim($_POST['wp_username']));
set_pconfig(local_user(),'wppost','wp_password',trim($_POST['wp_password'])); set_pconfig(local_user(),'wppost','wp_password',trim($_POST['wp_password']));
set_pconfig(local_user(),'wppost','wp_blog',trim($_POST['wp_blog'])); set_pconfig(local_user(),'wppost','wp_blog',trim($_POST['wp_blog']));
set_pconfig(local_user(),'wppost','backlink',trim($_POST['wp_backlink']));
} }
@ -189,8 +197,15 @@ function wppost_send(&$a,&$b) {
$title = '<title>' . (($b['title']) ? $b['title'] : t('Post from Friendica')) . '</title>'; $title = '<title>' . (($b['title']) ? $b['title'] : t('Post from Friendica')) . '</title>';
$post = $title . bbcode($b['body']); $post = $title . bbcode($b['body']);
$wp_backlink = intval(get_pconfig($b['uid'],'wppost','backlink'));
if($wp_backlink && $b['plink'])
$post .= EOL . EOL . '<a href="' . $b['plink'] . '">'
. t('Read the original post and comment stream on Friendica') . '</a>' . EOL . EOL;
$post = xmlify($post); $post = xmlify($post);
$xml = <<< EOT $xml = <<< EOT
<?xml version=\"1.0\" encoding=\"utf-8\"?> <?xml version=\"1.0\" encoding=\"utf-8\"?>
<methodCall> <methodCall>