]> git.mxchange.org Git - friendica.git/commitdiff
Merge branch 'master' of git://github.com/friendica/friendica
authorTobias Diekershoff <tobias.diekershoff@gmx.net>
Mon, 7 Oct 2013 05:46:39 +0000 (07:46 +0200)
committerTobias Diekershoff <tobias.diekershoff@gmx.net>
Mon, 7 Oct 2013 05:46:39 +0000 (07:46 +0200)
19 files changed:
boot.php
include/api.php
include/bbcode.php
include/conversation.php
include/dba.php
include/diaspora.php
include/notifier.php
index.php
mod/admin.php
mod/community.php
mod/display.php
mod/network.php
mod/profile.php
mod/settings.php
object/Conversation.php
view/theme/frost-mobile/images/link.png [new file with mode: 0644]
view/theme/frost-mobile/style.css
view/theme/frost-mobile/templates/jot.tpl
view/theme/vier/style.css

index 99eb3d0c1708967d203d0b620aa61cd3c86f2149..693b70ba84ad617a813b9fcd7a5810b708bb933d 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -289,7 +289,7 @@ define ( 'GRAVITY_COMMENT',      6);
  */
 
 function startup() {
-       
+
        error_reporting(E_ERROR | E_WARNING | E_PARSE);
 
        set_time_limit(0);
@@ -389,7 +389,7 @@ if(! class_exists('App')) {
                        'stylesheet' => '',
                        'template_engine' => 'smarty3',
                );
-               
+
                // array of registered template engines ('name'=>'class name')
                public $template_engines = array();
                // array of instanced template engines ('name'=>'instance')
@@ -420,6 +420,9 @@ if(! class_exists('App')) {
 
                        global $default_timezone, $argv, $argc;
 
+                       if (file_exists(".htpreconfig.php"))
+                               @include(".htpreconfig.php");
+
                        $this->timezone = ((x($default_timezone)) ? $default_timezone : 'UTC');
 
                        date_default_timezone_set($this->timezone);
@@ -453,7 +456,7 @@ if(! class_exists('App')) {
                        if(x($_SERVER,'HTTPS') && $_SERVER['HTTPS'])
                                $this->scheme = 'https';
                        elseif(x($_SERVER,'SERVER_PORT') && (intval($_SERVER['SERVER_PORT']) == 443))
-                       $this->scheme = 'https';
+                               $this->scheme = 'https';
 
                        if(x($_SERVER,'SERVER_NAME')) {
                                $this->hostname = $_SERVER['SERVER_NAME'];
@@ -478,13 +481,17 @@ if(! class_exists('App')) {
                                if(isset($path) && strlen($path) && ($path != $this->path))
                                        $this->path = $path;
                        }
+
+                       if ($hostname != "")
+                               $this->hostname = $hostname;
+
                        if (is_array($argv) && $argc>1 && substr(end($argv), 0, 4)=="http" ) {
                                $this->set_baseurl(array_pop($argv) );
                                $argc --;
                        }
 
                        set_include_path("include/$this->hostname" . PATH_SEPARATOR . get_include_path());
-            
+
                        if((x($_SERVER,'QUERY_STRING')) && substr($_SERVER['QUERY_STRING'],0,2) === "q=") {
                                $this->query_string = substr($_SERVER['QUERY_STRING'],2);
                                // removing trailing / - maybe a nginx problem
@@ -550,7 +557,7 @@ if(! class_exists('App')) {
                        $mobile_detect = new Mobile_Detect();
                        $this->is_mobile = $mobile_detect->isMobile();
                        $this->is_tablet = $mobile_detect->isTablet();
-                       
+
                        /**
                         * register template engines
                         */
@@ -560,7 +567,7 @@ if(! class_exists('App')) {
                                        $this->register_template_engine($k);
                                }
                        }
-                       
+
                }
 
                function get_basepath() {
@@ -640,7 +647,7 @@ if(! class_exists('App')) {
                        $this->pager['itemspage'] = ((intval($n) > 0) ? intval($n) : 0);
                        $this->pager['start'] = ($this->pager['page'] * $this->pager['itemspage']) - $this->pager['itemspage'];
                }
-               
+
                function set_pager_page($n) {
                        $this->pager['page'] = $n;
                        $this->pager['start'] = ($this->pager['page'] * $this->pager['itemspage']) - $this->pager['itemspage'];
@@ -773,7 +780,7 @@ if(! class_exists('App')) {
                                        $template_engine = $this->theme['template_engine'];
                                }
                        }
-                       
+
                        if (isset($this->template_engines[$template_engine])){
                                if(isset($this->template_engine_instance[$template_engine])){
                                        return $this->template_engine_instance[$template_engine];
@@ -784,7 +791,7 @@ if(! class_exists('App')) {
                                        return $obj;
                                }
                        }
-                       
+
                        echo "template engine <tt>$template_engine</tt> is not registered!\n"; killme();
                }
 
@@ -827,6 +834,7 @@ if(! class_exists('App')) {
                        //$this->performance["markstart"] -= microtime(true) - $this->performance["marktime"];
                        $this->performance["markstart"] = microtime(true) - $this->performance["markstart"] - $this->performance["marktime"];
                }
+
        }
 }
 
@@ -1008,7 +1016,7 @@ if(! function_exists('update_db')) {
                                                                ));
                                                                $subject=sprintf(t('Update Error at %s'), $a->get_baseurl());
                                                                require_once('include/email.php');
-                                                               $subject = email_header_encode($subject,'UTF-8');       
+                                                               $subject = email_header_encode($subject,'UTF-8');
                                                                mail($a->config['admin_email'], $subject, $email_msg,
                                                                        'From: ' . 'Administrator' . '@' . $_SERVER['SERVER_NAME'] . "\n"
                                                                        . 'Content-type: text/plain; charset=UTF-8' . "\n"
@@ -1020,7 +1028,7 @@ if(! function_exists('update_db')) {
                                                        else {
                                                                set_config('database','update_' . $x, 'success');
                                                                set_config('system','build', $x + 1);
-                                                       }                                                               
+                                                       }
                                                }
                                        }
                                }
@@ -1288,7 +1296,7 @@ if(! function_exists('profile_load')) {
                $user = q("select uid from user where nickname = '%s' limit 1",
                        dbesc($nickname)
                );
-               
+
                if(! ($user && count($user))) {
                        logger('profile error: ' . $a->query_string, LOGGER_DEBUG);
                        notice( t('Requested account is not available.') . EOL );
@@ -1310,7 +1318,7 @@ if(! function_exists('profile_load')) {
                }
 
                $r = null;
-                          
+
                if($profile) {
                        $profile_int = intval($profile);
                        $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `contact`.`avatar-date` AS picdate, `user`.* FROM `profile`
@@ -1334,7 +1342,7 @@ if(! function_exists('profile_load')) {
                        $a->error = 404;
                        return;
                }
-       
+
                // fetch user tags if this isn't the default profile
 
                if(! $r[0]['is-default']) {
index 5e80e0f0a317c54020177d021e4250c4d028e164..cfbf7a7e5c78eedb47977ef8c75ce84c3fc998b9 100644 (file)
        function api_status_show(&$a, $type){
                $user_info = api_get_user($a);
                // get last public wall message
-               $lastwall = q("SELECT `item`.*, `i`.`contact-id` as `reply_uid`, `i`.`nick` as `reply_author`
-                               FROM `item`, `contact`,
-                                       (SELECT `item`.`id`, `item`.`contact-id`, `contact`.`nick` FROM `item`,`contact` WHERE `contact`.`id`=`item`.`contact-id`) as `i` 
+
+               $lastwall = q("SELECT `item`.*, `i`.`contact-id` as `reply_uid`, `c`.`nick` as `reply_author`
+                               FROM `item`, `contact`, `item` as `i`, `contact` as `c`
                                WHERE `item`.`contact-id` = %d
                                        AND `i`.`id` = `item`.`parent`
-                                       AND `contact`.`id`=`item`.`contact-id` AND `contact`.`self`=1
-                                       AND `type`!='activity'
+                                       AND `contact`.`id`=`item`.`contact-id` AND `c`.`id`=`i`.`contact-id` AND `contact`.`self`=1
+                                       AND `item`.`type`!='activity'
                                        AND `item`.`allow_cid`='' AND `item`.`allow_gid`='' AND `item`.`deny_cid`='' AND `item`.`deny_gid`=''
-                               ORDER BY `created` DESC 
+                               ORDER BY `item`.`created` DESC
                                LIMIT 1",
                                intval($user_info['id'])
                );
 
+//             $lastwall = q("SELECT `item`.*, `i`.`contact-id` as `reply_uid`, `i`.`nick` as `reply_author`
+//                             FROM `item`, `contact`,
+//                                     (SELECT `item`.`id`, `item`.`contact-id`, `contact`.`nick` FROM `item`,`contact` WHERE `contact`.`id`=`item`.`contact-id`) as `i` 
+//                             WHERE `item`.`contact-id` = %d
+//                                     AND `i`.`id` = `item`.`parent`
+//                                     AND `contact`.`id`=`item`.`contact-id` AND `contact`.`self`=1
+//                                     AND `type`!='activity'
+//                                     AND `item`.`allow_cid`='' AND `item`.`allow_gid`='' AND `item`.`deny_cid`='' AND `item`.`deny_gid`=''
+//                             ORDER BY `created` DESC
+//                             LIMIT 1",
+//                             intval($user_info['id'])
+//             );
+
                if (count($lastwall)>0){
                        $lastwall = $lastwall[0];
 
index f07c1aa6c38fde13470a5ee2c647602e90e94961..0f8c2df74ebc225c4bb905aa9950e9bfcc5bff25 100644 (file)
@@ -38,7 +38,8 @@ function tryoembed($match){
        $url = ((count($match)==2)?$match[1]:$match[2]);
 
        // Always embed the SSL version
-       $url = str_replace("http://www.youtube.com/", "https://www.youtube.com/", $url);
+       $url = str_replace(array("http://www.youtube.com/", "http://player.vimeo.com/"),
+                               array("https://www.youtube.com/", "https://player.vimeo.com/"), $url);
 
        //logger("tryoembed: $url");
 
@@ -666,9 +667,9 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal
        $Text = preg_replace("/\[vimeo\]https?:\/\/vimeo.com\/([0-9]+)(.*?)\[\/vimeo\]/ism",'[vimeo]$1[/vimeo]',$Text);
 
        if ($tryoembed)
-               $Text = preg_replace("/\[vimeo\]([0-9]+)(.*?)\[\/vimeo\]/ism", '<iframe width="' . $a->videowidth . '" height="' . $a->videoheight . '" src="http://player.vimeo.com/video/$1" frameborder="0" ></iframe>', $Text);
+               $Text = preg_replace("/\[vimeo\]([0-9]+)(.*?)\[\/vimeo\]/ism", '<iframe width="' . $a->videowidth . '" height="' . $a->videoheight . '" src="https://player.vimeo.com/video/$1" frameborder="0" ></iframe>', $Text);
        else
-               $Text = preg_replace("/\[vimeo\]([0-9]+)(.*?)\[\/vimeo\]/ism", "http://vimeo.com/$1", $Text);
+               $Text = preg_replace("/\[vimeo\]([0-9]+)(.*?)\[\/vimeo\]/ism", "https://vimeo.com/$1", $Text);
 
 //     $Text = preg_replace("/\[youtube\](.*?)\[\/youtube\]/", '<object width="425" height="350" type="application/x-shockwave-flash" data="http://www.youtube.com/v/$1" ><param name="movie" value="http://www.youtube.com/v/$1"></param><!--[if IE]><embed src="http://www.youtube.com/v/$1" type="application/x-shockwave-flash" width="425" height="350" /><![endif]--></object>', $Text);
 
index 2e336efab0bb5b4f5ff43d21c35caf06efdf8aad..31f40aa6f8ca20767b47f90e94194719e091a8f5 100644 (file)
@@ -487,7 +487,6 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
        $alike = array();
        $dlike = array();
 
-
        // array with html for each thread (parent+comments)
        $threads = array();
        $threadsid = -1;
@@ -516,7 +515,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                                        if($blocked)
                                                continue;
                                }
-                                                       
+
 
                                $threadsid++;
 
@@ -697,7 +696,6 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                                $threads[$threadsid]['items'] = array($arr['output']);
 
                        }
-
                }
                else
                {
@@ -719,7 +717,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                                if($arr_blocked) {
                                        $blocked = false;
                                        foreach($arr_blocked as $b) {
-                                               
+
                                                if($b && link_compare($item['author-link'],$b)) {
                                                        $blocked = true;
                                                        break;
@@ -728,7 +726,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                                        if($blocked)
                                                continue;
                                }
-                                                       
+
 
 
                                // Can we put this after the visibility check?
@@ -754,6 +752,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
                        }
 
                        $threads = $conv->get_template_data($alike, $dlike);
+
                        if(!$threads) {
                                logger('[ERROR] conversation : Failed to get template data.', LOGGER_DEBUG);
                                $threads = array();
index 50354b7f49ebaad028dc2042f335ce35ce78d76a..dae14559312d00ebb1b8bf8a358ccecd40380e5f 100644 (file)
@@ -93,6 +93,8 @@ class dba {
                $stamp2 = microtime(true);
                $duration = (float)($stamp2-$stamp1);
 
+               $a->save_timestamp($stamp1, "database");
+
                if(x($a->config,'system') && x($a->config['system'],'db_log')) {
                        if (($duration > $a->config["system"]["db_loglimit"])) {
                                $duration = round($duration, 3);
@@ -168,7 +170,7 @@ class dba {
                        }
                }
 
-               $a->save_timestamp($stamp1, "database");
+               //$a->save_timestamp($stamp1, "database");
 
                if($this->debug)
                        logger('dba: ' . printable(print_r($r, true)));
index 4f1eb22234dae9d12f6f36349c4e35da6eb5afb5..f4ce6cb760ad3b734193256b63cc20527a0e3367 100755 (executable)
@@ -2667,16 +2667,15 @@ function diaspora_transmit($owner,$contact,$slap,$public_batch,$queue_run=false)
                $return_code = 0;
        }
        else {
-               if(! intval(get_config('system','diaspora_test'))) {
+               if (!intval(get_config('system','diaspora_test'))) {
                        post_url($dest_url . '/', $slap);
                        $return_code = $a->get_curl_code();
-               }
-               else {
+               } else {
                        logger('diaspora_transmit: test_mode');
                        return 200;
                }
        }
-       
+
        logger('diaspora_transmit: ' . $logid . ' returns: ' . $return_code);
 
        if((! $return_code) || (($return_code == 503) && (stristr($a->get_curl_headers(),'retry-after')))) {
index 74597c30d2adf516576fad9b0a894a838de8fb83..3f9c286ed7d7eeecc473f218ec79afdae58fc3cf 100644 (file)
@@ -663,7 +663,7 @@ function notifier_run(&$argv, &$argc){
 
                                                        // if contact's ssl policy changed, which we just determined
                                                        // is on our own server, update our contact links
-                                                       
+
                                                        $ssl_policy = get_config('system','ssl_policy');
                                                        fix_contact_ssl_policy($x[0],$ssl_policy);
 
@@ -675,17 +675,15 @@ function notifier_run(&$argv, &$argc){
                                                        require_once('library/simplepie/simplepie.inc');
                                                        logger('mod-delivery: local delivery');
                                                        local_delivery($x[0],$atom);
-                                                       break;                                  
+                                                       break;
                                                }
                                        }
 
-
-
                                        logger('notifier: dfrndelivery: ' . $contact['name']);
                                        $deliver_status = dfrn_deliver($owner,$contact,$atom);
 
                                        logger('notifier: dfrn_delivery returns ' . $deliver_status);
-       
+
                                        if($deliver_status == (-1)) {
                                                logger('notifier: delivery failed: queuing message');
                                                // queue message for redelivery
index 6b6e873ea6b1987a20206b5bdcbabd2cdda9bccc..8784b5d0eb1d5f7bb82af52dbd7d6cbdd60ae6a9 100644 (file)
--- a/index.php
+++ b/index.php
@@ -104,12 +104,12 @@ if((x($_GET,'zrl')) && (!$install && !$maintenance)) {
  * For Mozilla auth manager - still needs sorting, and this might conflict with LRDD header.
  * Apache/PHP lumps the Link: headers into one - and other services might not be able to parse it
  * this way. There's a PHP flag to link the headers because by default this will over-write any other 
- * link header. 
+ * link header.
  *
  * What we really need to do is output the raw headers ourselves so we can keep them separate.
  *
  */
+
 // header('Link: <' . $a->get_baseurl() . '/amcd>; rel="acct-mgmt";');
 
 if((x($_SESSION,'authenticated')) || (x($_POST,'auth-params')) || ($a->module === 'login'))
@@ -136,7 +136,6 @@ if(! x($_SESSION,'sysmsg_info'))
  * any plugins have been added or removed and reacts accordingly. 
  */
 
-
 if($install)
        $a->module = 'install';
 elseif($maintenance)
@@ -191,7 +190,7 @@ if(strlen($a->module)) {
        // Compatibility with the Android Diaspora client
        if ($a->module == "stream")
                $a->module = "network";
-       
+
        $privateapps = get_config('config','private_addons');
 
        if(is_array($a->plugins) && in_array($a->module,$a->plugins) && file_exists("addon/{$a->module}/{$a->module}.php")) {
@@ -320,10 +319,8 @@ if($a->module_loaded) {
                $func = str_replace('-','_',current_theme()) . '_content_loaded';
                $func($a);
        }
-
 }
 
-
 /*
  * Create the page head after setting the language
  * and getting any auth credentials
index 4539e4192b8f6f5a436a7c2f1ffe7a3baf4d70c6..f1f895dbcc23720493485974e0d192e18f1c3fc0 100644 (file)
@@ -87,6 +87,11 @@ function admin_content(&$a) {
        if(x($_SESSION,'submanage') && intval($_SESSION['submanage']))
                return "";
 
+       if (function_exists("apc_delete")) {
+               $toDelete = new APCIterator('user', APC_ITER_VALUE);
+               apc_delete($toDelete);
+       }
+
        /**
         * Side bar links
         */
index 1f8adf89072ba1fd17d538279f3416967734ee66..dbf4c82beb8eb4a581e2757394830d4093017a71 100644 (file)
@@ -70,7 +70,7 @@ function community_content(&$a, $update = 0) {
                `contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`, 
                `contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`,
                `user`.`nickname`, `user`.`hidewall`
-               FROM `item` FORCE INDEX (`received`) LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
+               FROM `item` FORCE INDEX (`received`, `wall`) LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
                LEFT JOIN `user` ON `user`.`uid` = `item`.`uid`
                WHERE `item`.`visible` = 1 AND `item`.`deleted` = 0 and `item`.`moderated` = 0
                AND `item`.`allow_cid` = ''  AND `item`.`allow_gid` = ''
index 24ce35791ab3e9a674c140f83bd56cbba4e95b8f..538dc6454f1e3f30a78b97a747cb8d38838b1716 100644 (file)
@@ -123,7 +123,7 @@ function display_content(&$a, $update = 0) {
        if($update) {
 
                $r = q("SELECT id FROM item WHERE item.uid = %d
-                       AND `item`.`parent` = ( SELECT `parent` FROM `item` WHERE ( `id` = '%s' OR `uri` = '%s' ))
+                       AND `item`.`parent` = ( SELECT `parent` FROM `item` FORCE INDEX (PRIMARY, `uri`) WHERE ( `id` = '%s' OR `uri` = '%s' ))
                        $sql_extra AND unseen = 1",
                        intval($a->profile['uid']),
                        dbesc($item_id),
@@ -142,7 +142,7 @@ function display_content(&$a, $update = 0) {
                WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
                and `item`.`moderated` = 0
                AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
-               AND `item`.`parent` = ( SELECT `parent` FROM `item` WHERE ( `id` = '%s' OR `uri` = '%s' )
+               AND `item`.`parent` = ( SELECT `parent` FROM `item` FORCE INDEX (PRIMARY, `uri`) WHERE ( `id` = '%s' OR `uri` = '%s' )
                AND uid = %d )
                $sql_extra
                ORDER BY `parent` DESC, `gravity` ASC, `id` ASC ",
@@ -171,7 +171,7 @@ function display_content(&$a, $update = 0) {
                                WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
                                and `item`.`moderated` = 0
                                AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
-                               AND `item`.`parent` = ( SELECT `parent` FROM `item` WHERE `uri` = '%s' AND uid = %d )
+                               AND `item`.`parent` = ( SELECT `parent` FROM `item` FORCE INDEX (PRIMARY, `uri`) WHERE `uri` = '%s' AND uid = %d )
                                ORDER BY `parent` DESC, `gravity` ASC, `id` ASC ",
                                intval(local_user()),
                                dbesc($item_uri),
index 624169511a06a5c6e702bf4a37dcd6367a9df1ec..7195092ea1a31f1302674a7d35ef21222d873729 100644 (file)
@@ -376,7 +376,6 @@ function network_content(&$a, $update = 0) {
                }
        }
 
-
        $o = '';
 
        // item filter tabs
@@ -498,10 +497,6 @@ function network_content(&$a, $update = 0) {
 
        // --- end item filter tabs
 
-
-
-
-
        $contact_id = $a->cid;
 
        require_once('include/acl_selectors.php');
@@ -572,7 +567,6 @@ function network_content(&$a, $update = 0) {
 
        }
 
-
        // We don't have to deal with ACLs on this page. You're looking at everything
        // that belongs to you, hence you can see all of it. We will filter by group if
        // desired. 
@@ -849,7 +843,6 @@ function network_content(&$a, $update = 0) {
                        $update_unseen = ' WHERE uid = ' . intval(local_user()) . ' AND unseen = 1 AND parent IN ( ' . dbesc($parents_str) . ' )';
        }
 
-
        // We aren't going to try and figure out at the item, group, and page
        // level which items you've seen and which you haven't. If you're looking
        // at the top level network page just mark everything seen. 
@@ -864,7 +857,7 @@ function network_content(&$a, $update = 0) {
 // on they just get buried deeper. It has happened to me a couple of times also.
 
        if((! $group) && (! $cid) && (! $star)) {
-               $r = q("UPDATE `item` SET `unseen` = 0 
+               $r = q("UPDATE `item` SET `unseen` = 0
                        WHERE `unseen` = 1 AND `uid` = %d",
                        intval(local_user())
                );
index a7b576488e975429513ba5bcca4d1bb446d69d55..c5da0ebed3689f7be1292f639f3ba9996555e478 100644 (file)
@@ -277,7 +277,7 @@ function profile_content(&$a, $update = 0) {
                $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage']));
 
                $r = q("SELECT `item`.`id` AS `item_id`, `contact`.`uid` AS `contact-uid`
-                       FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
+                       FROM `item` FORCE INDEX (created, uid) LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
                        WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
                        and `item`.`moderated` = 0 AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
                        AND `item`.`id` = `item`.`parent` AND `item`.`wall` = 1
index f9d5b712ca016e9fab6cd50f2ed0c666524495a7..12f7910ccee6b6c35e599f0ef4a877b8912fc78a 100644 (file)
@@ -16,6 +16,11 @@ function get_theme_config_file($theme){
 
 function settings_init(&$a) {
 
+       if (function_exists("apc_delete")) {
+               $toDelete = new APCIterator('user', APC_ITER_VALUE);
+               apc_delete($toDelete);
+       }
+
        // These lines provide the javascript needed by the acl selector
 
        $tpl = get_markup_template("settings-head.tpl");
index bd7a95cf2a68e651e1a3d5f96ea14c6e58ad5ace..fd1e282cabf6ce7525c40e80c73d05b3d2938ccc 100644 (file)
@@ -130,10 +130,14 @@ class Conversation extends BaseObject {
                global $a;
                $result = array();
 
+               $i = 0;
+
                foreach($this->threads as $item) {
                        if($item->get_data_value('network') === NETWORK_MAIL && local_user() != $item->get_data_value('uid'))
                                continue;
+
                        $item_data = $item->get_template_data($alike, $dlike);
+
                        if(!$item_data) {
                                logger('[ERROR] Conversation::get_template_data : Failed to get item template data ('. $item->get_id() .').', LOGGER_DEBUG);
                                return false;
diff --git a/view/theme/frost-mobile/images/link.png b/view/theme/frost-mobile/images/link.png
new file mode 100644 (file)
index 0000000..7c5c8ed
Binary files /dev/null and b/view/theme/frost-mobile/images/link.png differ
index 30c3e97c498cc90f95e544df34cf09b3d28b565d..85f2b462e174f7b318c224e48dba7b4d6b5b417f 100644 (file)
@@ -3790,7 +3790,14 @@ aside input[type='text'] {
        background-repeat: no-repeat;\r
        opacity: 0.5;\r
 }\r
-.icon.link { display: none; background-position: -144px 0px;}\r
+\r
+.icon.link {\r
+    display: block;  width: 22px; height: 24px;\r
+    background-size: 100% 100%;\r
+    background-image: url('images/link.png');\r
+    background-repeat: no-repeat;\r
+\r
+}\r
 \r
 /*.globe { background-position: 0px -16px;}*/\r
 .icon.globe {\r
index 1dcfc0b21cbf172715e9603f2e8632c65e6a62ae..663d9b3d319ab6e9102c3e1d0dc55c4c768528a3 100644 (file)
        <div id="profile-upload-wrapper" style="display: {{$visitor}};" >
                <div id="wall-image-upload-div" ><a href="#" onclick="return false;" id="wall-image-upload" class="icon camera" title="{{$upload}}"></a></div>
        </div> 
-       <div id="profile-attach-wrapper" style="display: {{$visitor}};" >
+    {{*<!--<div id="profile-attach-wrapper" style="display: {{$visitor}};" >
                <div id="wall-file-upload-div" ><a href="#" onclick="return false;" id="wall-file-upload" class="icon attach" title="{{$attach}}"></a></div>
-       </div> 
-
-       {{*<!--<div id="profile-link-wrapper" style="display: {{$visitor}};" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" >
-               <a id="profile-link" class="icon link" title="{{$weblink}}" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink(); return false;"></a>-->*}}
+       </div> -->*}}
+    {{*<!--<div id="profile-link-wrapper" style="display: {{$visitor}};" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" >-->*}}
        <div id="profile-link-wrapper" style="display: {{$visitor}};" >
-               <a id="profile-link" class="icon link" title="{{$weblink}}" onclick="jotGetLink(); return false;"></a>
-       </div> 
+    <a id="profile-link" class="icon link" title="{{$weblink}}" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink(); return false;"></a>
+       </div>
        <div id="profile-video-wrapper" style="display: {{$visitor}};" >
                <a id="profile-video" class="icon video" title="{{$video}}" onclick="jotVideoURL();return false;"></a>
        </div> 
index 658ce1b7351ce75c3d7dc271b38bfbc57f7295ad..359907dbd98f2cdc8a71a377ae3d60af8f4db505 100644 (file)
@@ -863,19 +863,21 @@ aside {
   /* display: table-cell; */
   vertical-align: top;
   width: 185px;
-  padding: 32px 10px 10px 20px;
+  /* padding: 32px 10px 10px 20px; */
+  padding: 10px 10px 0px 20px;
   /* border-right: 1px solid #D2D2D2; */
   /* background-color: #ECECF2; */
   background-color: #F2F2F2;
   font-size: 13px;
   /* background: #F1F1F1; */
-  top: 0px;
+  /* top: 0px; */
+  top: 32px;
   overflow-y: auto;
   z-index: 2;
 
   position: fixed;
   /* overflow: auto; */
-  height: 100%;
+  height: calc(100% - 42px);
   /* overflow: scroll; */
 }
 aside .vcard .fn {