mirror of
https://github.com/friendica/friendica
synced 2024-11-10 03:02:54 +00:00
saved searches on network page
This commit is contained in:
parent
f6a43afb8d
commit
481853d2cc
8 changed files with 108 additions and 7 deletions
4
boot.php
4
boot.php
|
@ -7,9 +7,9 @@ require_once('include/text.php');
|
||||||
require_once("include/pgettext.php");
|
require_once("include/pgettext.php");
|
||||||
|
|
||||||
|
|
||||||
define ( 'FRIENDIKA_VERSION', '2.2.1092' );
|
define ( 'FRIENDIKA_VERSION', '2.2.1093' );
|
||||||
define ( 'DFRN_PROTOCOL_VERSION', '2.21' );
|
define ( 'DFRN_PROTOCOL_VERSION', '2.21' );
|
||||||
define ( 'DB_UPDATE_VERSION', 1085 );
|
define ( 'DB_UPDATE_VERSION', 1086 );
|
||||||
|
|
||||||
define ( 'EOL', "<br />\r\n" );
|
define ( 'EOL', "<br />\r\n" );
|
||||||
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
|
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
|
||||||
|
|
|
@ -613,3 +613,11 @@ CREATE TABLE IF NOT EXISTS `deliverq` (
|
||||||
`item` INT NOT NULL ,
|
`item` INT NOT NULL ,
|
||||||
`contact` INT NOT NULL
|
`contact` INT NOT NULL
|
||||||
) ENGINE = MyISAM DEFAULT CHARSET=utf8;
|
) ENGINE = MyISAM DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `search` (
|
||||||
|
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
|
||||||
|
`uid` INT NOT NULL ,
|
||||||
|
`term` CHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
|
||||||
|
INDEX ( `uid` ),
|
||||||
|
INDEX ( `term` )
|
||||||
|
) ENGINE = MyISAM DEFAULT CHARSET=utf8;
|
||||||
|
|
|
@ -170,7 +170,7 @@ EOT;
|
||||||
$selected = (($group_id == $rr['id']) ? ' class="group-selected" ' : '');
|
$selected = (($group_id == $rr['id']) ? ' class="group-selected" ' : '');
|
||||||
$o .= ' <li class="sidebar-group-li">'
|
$o .= ' <li class="sidebar-group-li">'
|
||||||
. (($edit) ? "<a href=\"group/{$rr['id']}\" title=\"" . t('Edit')
|
. (($edit) ? "<a href=\"group/{$rr['id']}\" title=\"" . t('Edit')
|
||||||
. "\" ><img src=\"images/spencil.gif\" alt=\"" . t('Edit') . "\"></a> " : "")
|
. "\" class=\"groupsideedit\" ><img src=\"images/spencil.gif\" alt=\"" . t('Edit') . "\"></a> " : "")
|
||||||
. (($cid) ? '<input type="checkbox" class="' . (($selected) ? 'ticked' : 'unticked') . '" onclick="contactgroupChangeMember(' . $rr['id'] . ',' . $cid . ');return true;" '
|
. (($cid) ? '<input type="checkbox" class="' . (($selected) ? 'ticked' : 'unticked') . '" onclick="contactgroupChangeMember(' . $rr['id'] . ',' . $cid . ');return true;" '
|
||||||
. ((in_array($rr['id'],$member_of)) ? ' checked="checked" ' : '') . '/>' : '')
|
. ((in_array($rr['id'],$member_of)) ? ' checked="checked" ' : '') . '/>' : '')
|
||||||
. "<a href=\"$each/{$rr['id']}\" class=\"sidebar-group-element\" $selected >{$rr['name']}</a></li>\r\n";
|
. "<a href=\"$each/{$rr['id']}\" class=\"sidebar-group-element\" $selected >{$rr['name']}</a></li>\r\n";
|
||||||
|
|
|
@ -602,12 +602,14 @@ function micropro($contact, $redirect = false, $class = '', $textmode = false) {
|
||||||
|
|
||||||
|
|
||||||
if(! function_exists('search')) {
|
if(! function_exists('search')) {
|
||||||
function search($s,$id='search-box',$url='/search') {
|
function search($s,$id='search-box',$url='/search',$save = false) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
$o = '<div id="' . $id . '">';
|
$o = '<div id="' . $id . '">';
|
||||||
$o .= '<form action="' . $a->get_baseurl() . $url . '" method="get" >';
|
$o .= '<form action="' . $a->get_baseurl() . $url . '" method="get" >';
|
||||||
$o .= '<input type="text" name="search" id="search-text" value="' . $s .'" />';
|
$o .= '<input type="text" name="search" id="search-text" value="' . $s .'" />';
|
||||||
$o .= '<input type="submit" name="submit" id="search-submit" value="' . t('Search') . '" />';
|
$o .= '<input type="submit" name="submit" id="search-submit" value="' . t('Search') . '" />';
|
||||||
|
if($save)
|
||||||
|
$o .= '<input type="submit" name="save" id="search-save" value="' . t('Save') . '" />';
|
||||||
$o .= '</form></div>';
|
$o .= '</form></div>';
|
||||||
return $o;
|
return $o;
|
||||||
}}
|
}}
|
||||||
|
|
|
@ -16,8 +16,26 @@ function network_init(&$a) {
|
||||||
$search = ((x($_GET,'search')) ? escape_tags($_GET['search']) : '');
|
$search = ((x($_GET,'search')) ? escape_tags($_GET['search']) : '');
|
||||||
$srchurl = '/network' . ((x($_GET,'cid')) ? '?cid=' . $_GET['cid'] : '') . ((x($_GET,'star')) ? '?star=' . $_GET['star'] : '');
|
$srchurl = '/network' . ((x($_GET,'cid')) ? '?cid=' . $_GET['cid'] : '') . ((x($_GET,'star')) ? '?star=' . $_GET['star'] : '');
|
||||||
|
|
||||||
|
if(x($_GET,'save')) {
|
||||||
|
$r = q("select * from `search` where `uid` = %d and `term` = '%s' limit 1",
|
||||||
|
intval(local_user()),
|
||||||
|
dbesc($search)
|
||||||
|
);
|
||||||
|
if(! count($r)) {
|
||||||
|
q("insert into `search` ( `uid`,`term` ) values ( %d, '%s') ",
|
||||||
|
intval(local_user()),
|
||||||
|
dbesc($search)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(x($_GET,'remove')) {
|
||||||
|
q("delete from `search` where `uid` = %d and `term` = '%s' limit 1",
|
||||||
|
intval(local_user()),
|
||||||
|
dbesc($search)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
$a->page['aside'] .= search($search,'netsearch-box',$srchurl);
|
$a->page['aside'] .= search($search,'netsearch-box',$srchurl,true);
|
||||||
|
|
||||||
$a->page['aside'] .= '<div id="network-new-link">';
|
$a->page['aside'] .= '<div id="network-new-link">';
|
||||||
|
|
||||||
|
@ -49,8 +67,34 @@ function network_init(&$a) {
|
||||||
$a->page['aside'] .= '</div>';
|
$a->page['aside'] .= '</div>';
|
||||||
|
|
||||||
$a->page['aside'] .= group_side('network','network',true,$group_id);
|
$a->page['aside'] .= group_side('network','network',true,$group_id);
|
||||||
|
|
||||||
|
$a->page['aside'] .= saved_searches();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function saved_searches() {
|
||||||
|
|
||||||
|
$o = '';
|
||||||
|
|
||||||
|
$r = q("select `term` from `search` WHERE `uid` = %d",
|
||||||
|
intval(local_user())
|
||||||
|
);
|
||||||
|
|
||||||
|
if(count($r)) {
|
||||||
|
$o .= '<h3>' . t('Saved Searches') . '</h3>' . "\r\n";
|
||||||
|
$o .= '<div id="saved-search-list"><ul id="saved-search-ul">' . "\r\n";
|
||||||
|
foreach($r as $rr) {
|
||||||
|
$o .= '<li class="saved-search-li clear"><a href="network/?f=&remove=1&search=' . $rr['term'] . '" class="icon drophide savedsearchdrop" title="' . t('Remove term') . '" onclick="return confirmDelete();" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a> <a href="network/?f&search=' . $rr['term'] . '" class="savedsearchterm" >' . $rr['term'] . '</a></li>' . "\r\n";
|
||||||
|
}
|
||||||
|
$o .= '</ul></div>' . "\r\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
return $o;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function network_content(&$a, $update = 0) {
|
function network_content(&$a, $update = 0) {
|
||||||
|
|
||||||
|
|
14
update.php
14
update.php
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
define( 'UPDATE_VERSION' , 1085 );
|
define( 'UPDATE_VERSION' , 1086 );
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -704,10 +704,20 @@ function update_1083() {
|
||||||
`cmd` CHAR( 32 ) NOT NULL ,
|
`cmd` CHAR( 32 ) NOT NULL ,
|
||||||
`item` INT NOT NULL ,
|
`item` INT NOT NULL ,
|
||||||
`contact` INT NOT NULL
|
`contact` INT NOT NULL
|
||||||
) ENGINE = MYISAM ;");
|
) ENGINE = MYISAM ");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function update_1084() {
|
function update_1084() {
|
||||||
q("ALTER TABLE `contact` ADD `attag` CHAR( 255 ) NOT NULL AFTER `nick` ");
|
q("ALTER TABLE `contact` ADD `attag` CHAR( 255 ) NOT NULL AFTER `nick` ");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function update_1085() {
|
||||||
|
q("CREATE TABLE IF NOT EXISTS `search` (
|
||||||
|
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
|
||||||
|
`uid` INT NOT NULL ,
|
||||||
|
`term` CHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
|
||||||
|
INDEX ( `uid` ),
|
||||||
|
INDEX ( `term` )
|
||||||
|
) ENGINE = MYISAM ");
|
||||||
|
}
|
||||||
|
|
|
@ -1811,6 +1811,24 @@ a.mail-list-link {
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#search-save {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
.groupsideedit {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
#saved-search-ul {
|
||||||
|
list-style-type: none;
|
||||||
|
}
|
||||||
|
.savedsearchdrop, .savedsearchterm {
|
||||||
|
float: left;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
.savedsearchterm {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#side-follow-wrapper {
|
#side-follow-wrapper {
|
||||||
margin-top: 20px;
|
margin-top: 20px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1871,6 +1871,25 @@ a.mail-list-link {
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#search-save {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
.groupsideedit {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
#saved-search-ul {
|
||||||
|
list-style-type: none;
|
||||||
|
}
|
||||||
|
.savedsearchdrop, .savedsearchterm {
|
||||||
|
float: left;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
.savedsearchterm {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#side-follow-wrapper {
|
#side-follow-wrapper {
|
||||||
margin-top: 20px;
|
margin-top: 20px;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue