[geeklog-cvs] geeklog: Specify default sort order from configuration (part of ...
geeklog-cvs at lists.geeklog.net
geeklog-cvs at lists.geeklog.net
Sun Mar 7 13:01:23 EST 2010
changeset 7768:e611e17b85ec
url: http://project.geeklog.net/cgi-bin/hgwebdir.cgi/geeklog/rev/e611e17b85ec
user: Sami Barakat <sami at sbarakat.co.uk>
date: Sun Mar 07 17:56:57 2010 +0000
description:
Specify default sort order from configuration (part of feature request #0001006)
diffstat:
language/english.php | 6 ++++--
public_html/admin/install/config-install.php | 1 +
public_html/admin/install/lib-upgrade.php | 2 ++
public_html/docs/english/config.html | 4 ++++
sql/updates/mysql_1.6.1_to_1.6.2.php | 18 ++++++++++++++++++
system/classes/search.class.php | 6 +++++-
6 files changed, 34 insertions(+), 3 deletions(-)
diffs (102 lines):
diff -r 9a4c017e2a06 -r e611e17b85ec language/english.php
--- a/language/english.php Sun Mar 07 16:32:24 2010 +0000
+++ b/language/english.php Sun Mar 07 17:56:57 2010 +0000
@@ -1905,7 +1905,8 @@
'search_show_sort' => "Allow User to Sort Results?",
'search_show_limit' => "Show Page Limits?",
'search_separator' => "Group Separator",
- 'search_def_keytype' => "Default Search Method"
+ 'search_def_keytype' => "Default Search Method",
+ 'search_def_sort' => "Default Sort Order"
);
$LANG_configsubgroups['Core'] = array(
@@ -1997,7 +1998,8 @@
23 => array('Disabled' => 0, 'Enabled' => 1, 'Enabled (Default for Homepage only)' => 2),
24 => array('Contribute' => 'contribute', 'Home' => 'home', 'Advanced Search' => 'search', 'Directory' => 'directory', 'My Account' => 'prefs', 'Plugin Entries' => 'plugins', 'Custom Entries' => 'custom', 'Site Statistics' => 'stats'),
25 => array('New Stories' => 'story', 'New Comments' => 'comment', 'New Trackbacks' => 'trackback', 'New Pingbacks' => 'pingback', 'New Users' => 'user'),
- 26 => array('G (General Audiences)' => 'G', 'PG (Parental Guidance)' => 'PG', 'R (Restricted)' => 'R', 'X (Explicit)' => 'X')
+ 26 => array('G (General Audiences)' => 'G', 'PG (Parental Guidance)' => 'PG', 'R (Restricted)' => 'R', 'X (Explicit)' => 'X'),
+ 27 => array('Hits (asc)' => 'hits|asc', 'Hits (desc)' => 'hits|desc', 'Date (asc)' => 'date|asc', 'Date (desc)' => 'date|desc', 'Title (asc)' => 'title|asc', 'Title (desc)' => 'title|desc', 'Author (asc)' => 'uid|asc', 'Author (desc)' => 'uid|desc')
);
?>
diff -r 9a4c017e2a06 -r e611e17b85ec public_html/admin/install/config-install.php
--- a/public_html/admin/install/config-install.php Sun Mar 07 16:32:24 2010 +0000
+++ b/public_html/admin/install/config-install.php Sun Mar 07 17:56:57 2010 +0000
@@ -98,6 +98,7 @@
$c->add('search_separator',' > ','text',0,6,NULL,668,TRUE);
$c->add('search_def_keytype','phrase','select',0,6,20,672,TRUE);
$c->add('search_use_fulltext',FALSE,'hidden',0,6); // 675
+ $c->add('search_def_sort','hits|desc','select',0,6,27,676,TRUE);
// Subgroup: Stories and Trackback
$c->add('sg_stories', NULL, 'subgroup', 1, 0, NULL, 0, TRUE);
diff -r 9a4c017e2a06 -r e611e17b85ec public_html/admin/install/lib-upgrade.php
--- a/public_html/admin/install/lib-upgrade.php Sun Mar 07 16:32:24 2010 +0000
+++ b/public_html/admin/install/lib-upgrade.php Sun Mar 07 17:56:57 2010 +0000
@@ -488,6 +488,8 @@
require_once $_CONF['path'] . 'sql/updates/' . $_DB_dbms . '_1.6.1_to_1.6.2.php';
INST_updateDB($_SQL);
+ update_ConfValuesFor162();
+
$current_gl_version = '1.6.2';
$_SQL = '';
break;
diff -r 9a4c017e2a06 -r e611e17b85ec public_html/docs/english/config.html
--- a/public_html/docs/english/config.html Sun Mar 07 16:32:24 2010 +0000
+++ b/public_html/docs/english/config.html Sun Mar 07 17:56:57 2010 +0000
@@ -321,6 +321,10 @@
<li>'any': results may contain any of the search terms.</li>
<li>'phrase': search for the exact phrase as entered. (default)</li>
</ul></td></tr>
+<tr>
+ <td valign="top"><a name="desc_search_def_sort">search_def_sort</a></td>
+ <td valign="top">'Hits (desc)'</td>
+ <td valign="top">The default sort order for the search results.</td></tr>
</table>
diff -r 9a4c017e2a06 -r e611e17b85ec sql/updates/mysql_1.6.1_to_1.6.2.php
--- a/sql/updates/mysql_1.6.1_to_1.6.2.php Sun Mar 07 16:32:24 2010 +0000
+++ b/sql/updates/mysql_1.6.1_to_1.6.2.php Sun Mar 07 17:56:57 2010 +0000
@@ -29,4 +29,22 @@
$_SQL[] = "ALTER TABLE {$_TABLES['userprefs']} ADD advanced_editor tinyint(1) unsigned NOT NULL default '1' AFTER dfid";
$_SQL[] = "UPDATE {$_TABLES['userprefs']} SET advanced_editor = 0 WHERE uid = 1";
+/**
+ * Add new config options
+ *
+ */
+function update_ConfValuesFor162()
+{
+ global $_CONF, $_TABLES;
+
+ require_once $_CONF['path_system'] . 'classes/config.class.php';
+
+ $c = config::get_instance();
+
+ // search config options.
+ $c->add('search_def_sort','hits|desc','select',0,6,27,676,TRUE);
+
+ return true;
+}
+
?>
diff -r 9a4c017e2a06 -r e611e17b85ec system/classes/search.class.php
--- a/system/classes/search.class.php Sun Mar 07 16:32:24 2010 +0000
+++ b/system/classes/search.class.php Sun Mar 07 17:56:57 2010 +0000
@@ -471,7 +471,11 @@
$obj->setField('', '_html', true, false, '</span>');
$this->_wordlength = 50;
}
- $obj->setDefaultSort('hits');
+
+ // get default sort order
+ $default_sort = explode('|', $_CONF['search_def_sort']);
+ $obj->setDefaultSort($default_sort[0], $default_sort[1]);
+
// set this only now, for compatibility with PHP 4
$obj->setRowFunction(array($this, 'searchFormatCallback'));
More information about the geeklog-cvs
mailing list