aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--boot.php2
-rw-r--r--images/red.pngbin4909 -> 1265 bytes
-rw-r--r--include/notifier.php4
-rw-r--r--install/database.sql2
-rw-r--r--install/update.php10
-rw-r--r--mod/search.php112
6 files changed, 100 insertions, 30 deletions
diff --git a/boot.php b/boot.php
index 9bee6c35c..b8742b458 100644
--- a/boot.php
+++ b/boot.php
@@ -16,7 +16,7 @@ require_once('include/features.php');
define ( 'FRIENDICA_PLATFORM', 'Friendica Red');
define ( 'FRIENDICA_VERSION', trim(file_get_contents('version.inc')) . 'R');
define ( 'ZOT_REVISION', 1 );
-define ( 'DB_UPDATE_VERSION', 1014 );
+define ( 'DB_UPDATE_VERSION', 1015 );
define ( 'EOL', '<br />' . "\r\n" );
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
diff --git a/images/red.png b/images/red.png
index 1d0a2950e..c7831bb52 100644
--- a/images/red.png
+++ b/images/red.png
Binary files differ
diff --git a/include/notifier.php b/include/notifier.php
index 71571cbd5..ebb6f7bb5 100644
--- a/include/notifier.php
+++ b/include/notifier.php
@@ -49,7 +49,7 @@ require_once('include/html2plain.php');
require_once('include/cli_startup.php');
require_once('include/zot.php');
-
+require_once('include/queue_fn.php');
function notifier_run($argv, $argc){
@@ -261,8 +261,8 @@ function notifier_run($argv, $argc){
stringify_array_elms($recipients);
if(! $recipients)
return;
- logger('notifier: recipients: ' . print_r($recipients,true));
+ logger('notifier: recipients: ' . print_r($recipients,true));
$env_recips = null;
if($private) {
diff --git a/install/database.sql b/install/database.sql
index 5a17346e1..a4d885541 100644
--- a/install/database.sql
+++ b/install/database.sql
@@ -805,7 +805,7 @@ CREATE TABLE IF NOT EXISTS `tokens` (
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `verify` (
- `id` int(10) unsigned NOT NULL,
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`channel` int(10) unsigned NOT NULL DEFAULT '0',
`type` char(32) NOT NULL DEFAULT '',
`token` char(255) NOT NULL DEFAULT '',
diff --git a/install/update.php b/install/update.php
index 549ae63ed..cff3115a2 100644
--- a/install/update.php
+++ b/install/update.php
@@ -1,6 +1,6 @@
<?php
-define( 'UPDATE_VERSION' , 1014 );
+define( 'UPDATE_VERSION' , 1015 );
/**
*
@@ -211,3 +211,11 @@ function update_r1013() {
return UPDATE_SUCCESS;
return UPDATE_FAILED;
}
+
+function update_r1014() {
+ $r = q("ALTER TABLE `verify` CHANGE `id` `id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT");
+ if($r)
+ return UPDATE_SUCCESS;
+ return UPDATE_FAILED;
+}
+
diff --git a/mod/search.php b/mod/search.php
index 3f34587ef..6f40ad4b0 100644
--- a/mod/search.php
+++ b/mod/search.php
@@ -88,6 +88,9 @@ function search_content(&$a) {
require_once('include/conversation.php');
require_once('include/items.php');
+
+ $observer = $a->get_observer();
+
$o = '<div id="live-search"></div>' . "\r\n";
$o .= '<h3>' . t('Search') . '</h3>';
@@ -136,26 +139,90 @@ function search_content(&$a) {
// OR your own posts if you are a logged in member
// No items will be shown if the member has a blocked profile wall.
- if(! get_pconfig(local_user(),'system','alt_pager')) {
- $r = q("SELECT distinct(`item`.`uri`) as `total`
- FROM `item` 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` = '' AND `item`.`deny_cid` = '' AND `item`.`deny_gid` = '' AND `item`.`private` = 0 AND `user`.`hidewall` = 0)
- OR `item`.`uid` = %d )
- AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
- $sql_extra group by `item`.`uri` ",
- intval(local_user())
- );
-
- if(count($r))
- $a->set_pager_total(count($r));
-
- if(! count($r)) {
- info( t('No results.') . EOL);
- return $o;
- }
+
+
+
+ if((! $update) && (! $load)) {
+
+ // This is ugly, but we can't pass the profile_uid through the session to the ajax updater,
+ // because browser prefetching might change it on us. We have to deliver it with the page.
+
+ $o .= '<div id="live-channel"></div>' . "\r\n";
+ $o .= "<script> var profile_uid = " . $a->profile['profile_uid']
+ . "; var netargs = '?f='; var profile_page = " . $a->pager['page'] . "; </script>\r\n";
+
+ $a->page['htmlhead'] .= replace_macros(get_markup_template("build_query.tpl"),array(
+ '$baseurl' => z_root(),
+ '$pgtype' => 'search',
+ '$uid' => (($a->profile['profile_uid']) ? $a->profile['profile_uid'] : '0'),
+ '$gid' => '0',
+ '$cid' => '0',
+ '$cmin' => '0',
+ '$cmax' => '0',
+ '$star' => '0',
+ '$liked' => '0',
+ '$conv' => '0',
+ '$spam' => '0',
+ '$nouveau' => '0',
+ '$wall' => '0',
+ '$page' => (($a->pager['page'] != 1) ? $a->pager['page'] : 1),
+ '$search' => (($tag) ? '#' : '') . $search,
+ '$order' => '',
+ '$file' => '',
+ '$cats' => '',
+ '$dend' => '',
+ '$dbegin' => ''
+ ));
+
+
+ }
+
+
+
+ if(($update) && ($load)) {
+
+ $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage']));
+
+ if($load) {
+ $r = q("SELECT distinct(uri), item.* from item
+ WHERE item_restrict = 0
+ AND (( `item`.`allow_cid` = '' AND `item`.`allow_gid` = '' AND `item`.`deny_cid` = '' AND `item`.`deny_gid` = '' AND not ( item_flags & %d ))
+ OR ( `item`.`uid` = %d ))
+ $sql_extra
+ group by uri ORDER BY created DESC $pager_sql ",
+ intval(ITEM_PRIVATE),
+ intval(local_user()),
+ intval(ABOOK_FLAG_BLOCKED)
+
+ );
+ }
+ else {
+ $r = array();
+ }
+ }
+
+ if($r) {
+
+ $parents_str = ids_to_querystr($r,'item_id');
+
+ $items = q("SELECT `item`.*, `item`.`id` AS `item_id`
+ FROM `item`
+ WHERE item_restrict = 0 and
+ $sql_extra ",
+ intval($a->profile['profile_uid']),
+ dbesc($parents_str)
+ );
+
+ xchan_query($items);
+ $items = fetch_post_tags($items);
+ $items = conv_sort($items,'created');
+
+ } else {
+ $items = array();
}
+
+
$r = q("SELECT distinct(`item`.`uri`), `item`.*, `item`.`id` AS `item_id`,
`contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`alias`, `contact`.`rel`,
`contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`,
@@ -177,7 +244,7 @@ function search_content(&$a) {
);
- $a = fetch_post_tags($a);
+// $a = fetch_post_tags($a);
if(! count($r)) {
info( t('No results.') . EOL);
@@ -192,12 +259,7 @@ function search_content(&$a) {
$o .= conversation($a,$r,'search',false);
- if(! get_pconfig(local_user(),'system','alt_pager')) {
- $o .= paginate($a);
- }
- else {
- $o .= alt_pager($a,count($r));
- }
+ $o .= alt_pager($a,count($r));
return $o;
}