aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorFabio Comuni <fabrix.xm@gmail.com>2012-01-03 21:14:48 +0100
committerFabio Comuni <fabrix.xm@gmail.com>2012-01-03 21:14:48 +0100
commit93563370c96848948d28ed39e13284ebaf7f430a (patch)
tree701c29133372625f54a098026d8570f191727a24 /include
parentbe2fd56aae51ee02b6e40dedd4383e1ebddc752e (diff)
parent184230e06826117b1d87241e3acdf19935470e8f (diff)
downloadvolse-hubzilla-93563370c96848948d28ed39e13284ebaf7f430a.tar.gz
volse-hubzilla-93563370c96848948d28ed39e13284ebaf7f430a.tar.bz2
volse-hubzilla-93563370c96848948d28ed39e13284ebaf7f430a.zip
Merge remote-tracking branch 'friendica/master'
Diffstat (limited to 'include')
-rw-r--r--include/bbcode.php2
-rw-r--r--include/conversation.php60
-rw-r--r--include/datetime.php20
-rw-r--r--include/dba.php21
-rw-r--r--include/text.php4
5 files changed, 97 insertions, 10 deletions
diff --git a/include/bbcode.php b/include/bbcode.php
index 5218a06e8..6b733c8f4 100644
--- a/include/bbcode.php
+++ b/include/bbcode.php
@@ -27,7 +27,7 @@ function tryoembed($match){
// BBcode 2 HTML was written by WAY2WEB.net
- // extended to work with Mistpark/Friendika - Mike Macgirvin
+ // extended to work with Mistpark/Friendica - Mike Macgirvin
function bbcode($Text,$preserve_nl = false) {
diff --git a/include/conversation.php b/include/conversation.php
index f4dd01dde..26430d645 100644
--- a/include/conversation.php
+++ b/include/conversation.php
@@ -892,3 +892,63 @@ function status_editor($a,$x, $notes_cid = 0) {
return $o;
}
+
+
+function conv_sort($arr,$order) {
+
+ if((!(is_array($arr) && count($arr))))
+ return array();
+
+ $parents = array();
+
+ foreach($arr as $x)
+ if($x['id'] == $x['parent'])
+ $parents[] = $x;
+
+ if(stristr($order,'created'))
+ usort($parents,'sort_thr_created');
+ elseif(stristr($order,'commented'))
+ usort($parents,'sort_thr_commented');
+
+ foreach($parents as $x)
+ $x['children'] = array();
+
+ foreach($arr as $x) {
+ if($x['id'] != $x['parent']) {
+ $p = find_thread_parent_index($parents,$x);
+ $parents[$p]['children'][] = $x;
+ }
+ }
+ foreach($parents as $x)
+ if(count($x['children']))
+ usort($x['children'],'sort_thr_created_rev');
+
+ $ret = array();
+ foreach($parents as $x) {
+ $ret[] = $x;
+ if(count($x['children']))
+ foreach($x['children'] as $y)
+ $ret[] = $y;
+ }
+
+ return $ret;
+}
+
+
+function sort_thr_created($a,$b) {
+ return strcmp($b['created'],$a['created']);
+}
+
+function sort_thr_created_rev($a,$b) {
+ return strcmp($a['created'],$b['created']);
+}
+
+function sort_thr_commented($a,$b) {
+ return strcmp($b['commented'],$a['commented']);
+}
+
+function find_thread_parent_index($arr,$x) {
+ foreach($arr as $k => $v)
+ if($v['id'] == $x['parent'])
+ return $k;
+}
diff --git a/include/datetime.php b/include/datetime.php
index 087e6cb20..d44e995cf 100644
--- a/include/datetime.php
+++ b/include/datetime.php
@@ -15,7 +15,6 @@ function timezone_cmp($a, $b) {
}}
// emit a timezone selector grouped (primarily) by continent
-
if(! function_exists('select_timezone')) {
function select_timezone($current = 'America/Los_Angeles') {
@@ -55,6 +54,23 @@ function select_timezone($current = 'America/Los_Angeles') {
return $o;
}}
+// return a select using 'field_select_raw' template, with timezones
+// groupped (primarily) by continent
+// arguments follow convetion as other field_* template array:
+// 'name', 'label', $value, 'help'
+if (!function_exists('field_timezone')){
+function field_timezone($name='timezone', $label='', $current = 'America/Los_Angeles', $help){
+ $options = select_timezone($current);
+ $options = str_replace('<select id="timezone_select" name="timezone">','', $options);
+ $options = str_replace('</select>','', $options);
+
+ $tpl = get_markup_template('field_select_raw.tpl');
+ return replace_macros($tpl, array(
+ '$field' => array($name, $label, $current, $help, $options),
+ ));
+
+}}
+
// General purpose date parse/convert function.
// $from = source timezone
// $to = dest timezone
@@ -446,4 +462,4 @@ function update_contact_birthdays() {
}
}
-} \ No newline at end of file
+}
diff --git a/include/dba.php b/include/dba.php
index b89cf5376..782c279d5 100644
--- a/include/dba.php
+++ b/include/dba.php
@@ -18,7 +18,7 @@ class dba {
private $db;
public $mysqli = true;
public $connected = false;
-
+ public $error = false;
function __construct($server,$user,$pass,$db,$install = false) {
@@ -27,10 +27,16 @@ class dba {
$pass = trim($pass);
$db = trim($db);
+ if (!(strlen($server) && strlen($user))){
+ $this->connected = false;
+ $this->db = null;
+ return;
+ }
+
if($install) {
if(strlen($server) && ($server !== 'localhost') && ($server !== '127.0.0.1')) {
if(! dns_get_record($server, DNS_A + DNS_CNAME + DNS_PTR)) {
- notice( sprintf( t('Cannot locate DNS info for database server \'%s\''), $server));
+ $this->error = sprintf( t('Cannot locate DNS info for database server \'%s\''), $server);
$this->connected = false;
$this->db = null;
return;
@@ -152,10 +158,11 @@ class dba {
}
function __destruct() {
- if($this->mysqli)
- @$this->db->close();
- else
- @mysql_close($this->db);
+ if ($this->db)
+ if($this->mysqli)
+ $this->db->close();
+ else
+ mysql_close($this->db);
}
}}
@@ -186,6 +193,7 @@ function dbesc($str) {
}}
+
// Function: q($sql,$args);
// Description: execute SQL query with printf style args.
// Example: $r = q("SELECT * FROM `%s` WHERE `uid` = %d",
@@ -209,7 +217,6 @@ function q($sql) {
* session data after abnormal program termination
*
*/
-
logger('dba: no database: ' . print_r($args,true));
return false;
diff --git a/include/text.php b/include/text.php
index d6b3ceeab..f32aaad07 100644
--- a/include/text.php
+++ b/include/text.php
@@ -426,6 +426,10 @@ function attribute_contains($attr,$s) {
if(! function_exists('logger')) {
function logger($msg,$level = 0) {
+ // turn off logger in install mode
+ global $a;
+ if ($a->module == 'install') return;
+
$debugging = get_config('system','debugging');
$loglevel = intval(get_config('system','loglevel'));
$logfile = get_config('system','logfile');