summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarl 'vollmerk' Vollmer <vollmer@ampache.org>2008-02-28 06:36:25 +0000
committerKarl 'vollmerk' Vollmer <vollmer@ampache.org>2008-02-28 06:36:25 +0000
commitc1f2b35e2a18b0752746f5db5794cf18714bc71d (patch)
tree279b008abb9c5585f957396c8da85bb429e033f9
parent7bdf3a77b706c01c1642a02f21823b74f8f930db (diff)
downloadampache-c1f2b35e2a18b0752746f5db5794cf18714bc71d.tar.gz
ampache-c1f2b35e2a18b0752746f5db5794cf18714bc71d.tar.bz2
ampache-c1f2b35e2a18b0752746f5db5794cf18714bc71d.zip
corrected a few queries, removed a few other useless ones that were already broken
-rwxr-xr-xdocs/CHANGELOG2
-rw-r--r--lib/class/preference.class.php7
-rw-r--r--lib/class/user.class.php9
-rw-r--r--lib/init.php13
4 files changed, 19 insertions, 12 deletions
diff --git a/docs/CHANGELOG b/docs/CHANGELOG
index 1567f401..15afd05f 100755
--- a/docs/CHANGELOG
+++ b/docs/CHANGELOG
@@ -4,6 +4,8 @@
--------------------------------------------------------------------------
v.3.4-Beta2
+ - Removed some invalid queries that were not needed, tweaked logic
+ of no_session to avoid useless query
- Added Greek Translation ( Thx Panayotis Tsirigotis )
- Fixed browse issue when adding filters under specific conditions
- Removed ip2int, int2ip and replaced with standard PHP functions
diff --git a/lib/class/preference.class.php b/lib/class/preference.class.php
index dadbbd17..a844d1b0 100644
--- a/lib/class/preference.class.php
+++ b/lib/class/preference.class.php
@@ -319,8 +319,9 @@ class Preference {
public static function init() {
/* Get Global Preferences */
- $sql = "SELECT preference.name,user_preference.value FROM preference,user_preference WHERE user_preference.user='-1' " .
- " AND user_preference.preference = preference.id AND preference.catagory='system'";
+ $sql = "SELECT `preference`.`name`,`user_preference`.`value` FROM `preference`,`user_preference` " .
+ "WHERE `user_preference`.`user`='-1' " .
+ "AND `user_preference`.`preference` = `preference`.`id` AND `preference`.`catagory` = 'system'";
$db_results = Dba::query($sql);
while ($r = Dba::fetch_assoc($db_results)) {
@@ -335,7 +336,7 @@ class Preference {
}
$sql = "SELECT preference.name,user_preference.value FROM preference,user_preference WHERE user_preference.user='$user_id' " .
- " AND user_preference.preference = preference.id AND preference.catagory != 'system'";
+ "AND user_preference.preference = preference.id AND preference.catagory != 'system'";
$db_results = Dba::query($sql);
while ($r = Dba::fetch_assoc($db_results)) {
diff --git a/lib/class/user.class.php b/lib/class/user.class.php
index 5c7a2124..817f81ba 100644
--- a/lib/class/user.class.php
+++ b/lib/class/user.class.php
@@ -46,6 +46,8 @@ class User {
* class, it currently takes a username
*/
public function __construct($user_id=0) {
+
+ if (!$user_id) { return false; }
$this->id = intval($user_id);
$info = $this->_get_info();
@@ -56,9 +58,6 @@ class User {
$this->$key = $value;
}
- // Set the preferences for this user
- $this->set_preferences();
-
// Make sure the Full name is always filled
if (strlen($this->fullname) < 1) { $this->fullname = $this->username; }
@@ -150,7 +149,7 @@ class User {
$sql = "SELECT preference.name, preference.description, preference.catagory, preference.level, user_preference.value " .
"FROM preference INNER JOIN user_preference ON user_preference.preference=preference.id " .
- "WHERE user_preference.user='$user_id' $user_limit";
+ "WHERE user_preference.user='$user_id' " . $user_limit;
$db_results = Dba::query($sql);
/* Ok this is crapy, need to clean this up or improve the code FIXME */
@@ -175,7 +174,7 @@ class User {
$user_id = Dba::escape($this->id);
- $sql = "SELECT preference.name,user_preference.value FROM preference,user_preference WHERE user_preference.user='$user_id'" .
+ $sql = "SELECT preference.name,user_preference.value FROM preference,user_preference WHERE user_preference.user='$user_id' " .
"AND user_preference.preference=preference.id AND preference.type != 'system'";
$db_results = Dba::query($sql);
diff --git a/lib/init.php b/lib/init.php
index f02da5be..b86c3108 100644
--- a/lib/init.php
+++ b/lib/init.php
@@ -223,15 +223,20 @@ else {
session_name(Config::get('session_name'));
session_id(scrub_in($_REQUEST['sessid']));
session_start();
+ $GLOBALS['user'] = User::get_from_username($sess_results['username']);
}
- $GLOBALS['user'] = User::get_from_username($sess_results['username']);
-}
+ else {
+ $GLOBALS['user'] = new User();
+ }
+} // If NO_SESSION passed
// Load the Preferences from the database
Preference::init();
-// We need to create the tmp playlist for our user
-$GLOBALS['user']->load_playlist();
+// We need to create the tmp playlist for our user only if we have a session
+if (session_id()) {
+ $GLOBALS['user']->load_playlist();
+}
/* Add in some variables for ajax done here because we need the user */
Config::set('ajax_url',Config::get('web_path') . '/server/ajax.server.php',1);