[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Librefm-commits] [1646] merge gnukebox from trunk
From: |
Clint Adams |
Subject: |
[Librefm-commits] [1646] merge gnukebox from trunk |
Date: |
Sat, 16 May 2009 00:43:26 +0000 |
Revision: 1646
http://svn.sv.gnu.org/viewvc/?view=rev&root=librefm&revision=1646
Author: clint
Date: 2009-05-16 00:43:25 +0000 (Sat, 16 May 2009)
Log Message:
-----------
merge gnukebox from trunk
Modified Paths:
--------------
branches/stable/gnukebox/auth-utils.php
branches/stable/gnukebox/database.php
branches/stable/gnukebox/display.php
branches/stable/gnukebox/fix-album-art.php
branches/stable/gnukebox/install.php
branches/stable/gnukebox/nowplaying/1.2/index.php
branches/stable/gnukebox/scrobble-utils.php
branches/stable/gnukebox/utils/human-time.php
branches/stable/gnukebox/version.php
Modified: branches/stable/gnukebox/auth-utils.php
===================================================================
--- branches/stable/gnukebox/auth-utils.php 2009-05-16 00:22:39 UTC (rev
1645)
+++ branches/stable/gnukebox/auth-utils.php 2009-05-16 00:43:25 UTC (rev
1646)
@@ -46,7 +46,7 @@
// Validates authentication using a standard authentication token
global $adodb;
- $pass = $adodb->GetOne("SELECT password FROM Users WHERE username =" .
$adodb->qstr($username));
+ $pass = $adodb->GetOne('SELECT password FROM Users WHERE username =' .
$adodb->qstr($username));
if (!$pass) {
// TODO: Log failures somewhere
return false;
@@ -56,3 +56,17 @@
return $check_token == $token;
}
+
+/**
+ * Checks if the session is still valid. Assumes $sessionID is already quoted.
+ */
+function check_session($sessionID) {
+ global $adodb;
+
+ $session = $adodb->GetOne('SELECT expires from Scrobble_Sessions WHERE
sessionid = ' . $sessionID);
+ if (!$session) {
+ return(false);
+ }
+
+ return($session >= time());
+}
Modified: branches/stable/gnukebox/database.php
===================================================================
--- branches/stable/gnukebox/database.php 2009-05-16 00:22:39 UTC (rev
1645)
+++ branches/stable/gnukebox/database.php 2009-05-16 00:43:25 UTC (rev
1646)
@@ -29,7 +29,7 @@
require_once('adodb/adodb.inc.php');
try {
- $adodb =& NewADOConnection($adodb_connect_string);
+ $adodb =& NewADOConnection($connect_string);
} catch (exception $e) {
var_dump($e);
adodb_backtrace($e->gettrace());
Modified: branches/stable/gnukebox/display.php
===================================================================
--- branches/stable/gnukebox/display.php 2009-05-16 00:22:39 UTC (rev
1645)
+++ branches/stable/gnukebox/display.php 2009-05-16 00:43:25 UTC (rev
1646)
@@ -197,7 +197,7 @@
<div id="ft" role="navigation">
<ul>
- <li class="copy">© 2009 FooCorp</li>
+ <li class="copy">© 2009 Free Software Foundation, Inc</li>
<li><a href="http://libre.fm/contributors/">Contributors</a></li>
<li><a href="http://libre.fm/licensing/">Licensing information</a></li>
<li><a href="http://libre.fm/developer/">Developers</a></li>
Modified: branches/stable/gnukebox/fix-album-art.php
===================================================================
--- branches/stable/gnukebox/fix-album-art.php 2009-05-16 00:22:39 UTC (rev
1645)
+++ branches/stable/gnukebox/fix-album-art.php 2009-05-16 00:43:25 UTC (rev
1646)
@@ -67,12 +67,12 @@
$aws_xml = simplexml_load_file($request) or die("xml response not loading");
$image = $aws_xml->Items->Item->MediumImage->URL;
-
+
if (!$image) { $image = "/i/qm50.png"; $license="librefm";}
if ($image) {
-
+
if ($license == "") { $license = "amazon"; }
$license = $adodb->qstr($license);
@@ -80,7 +80,7 @@
$album = $adodb->qstr($album);
$artist = $adodb->qstr($artist);
- $sql = ("UPDATE Album SET image = "
+ $sql = ("UPDATE Album SET image = "
. ($image) . ", "
Modified: branches/stable/gnukebox/install.php
===================================================================
--- branches/stable/gnukebox/install.php 2009-05-16 00:22:39 UTC (rev
1645)
+++ branches/stable/gnukebox/install.php 2009-05-16 00:43:25 UTC (rev
1646)
@@ -38,6 +38,8 @@
} else {
$connect_string = $dbms . "://" . $_POST['username'] . ":" .
$_POST['password'] . "@" . $_POST['hostname'] . ":" . $_POST['port'] . "/" .
$_POST['dbname'];
}
+
+ $adodb_connect_string = str_replace('pgsql:', 'postgres:',
$connect_string );
try {
$adodb =& NewADOConnection($adodb_connect_string);
@@ -62,7 +64,7 @@
$adodb->Execute("CREATE TABLE Users (
uniqueid SERIAL PRIMARY KEY,
- username VARCHAR(64),
+ username VARCHAR(64) unique,
password VARCHAR(32) NOT NULL,
email VARCHAR(255),
fullname VARCHAR(255),
@@ -109,7 +111,7 @@
$adodb->Execute("CREATE TABLE Artist(
id SERIAL PRIMARY KEY,
- name VARCHAR(255),
+ name VARCHAR(255) unique,
mbid VARCHAR(36),
streamable INTEGER,
bio_published INTEGER,
@@ -166,7 +168,7 @@
streamurl VARCHAR(255),
otherid VARCHAR(16))");
}
-
+
$adodb->Execute("CREATE TABLE Scrobbles(
username VARCHAR(64) REFERENCES Users(username),
track VARCHAR(255),
@@ -218,15 +220,15 @@
track VARCHAR(255))");
$adodb->Execute("CREATE TABLE Error(
- id INTEGER(11) AUTO_INCREMENT KEY,
- msg TEXT,
+ id SERIAL PRIMARY KEY,
+ msg TEXT,
data TEXT,
time INTEGER)");
$adodb->Execute("CREATE TABLE Recovery_Request(
username VARCHAR(64),
email VARCHAR(255),
code VARCHAR(32),
- expires INTEGER,
+ expires INTEGER,
PRIMARY KEY(username))");
$adodb->Execute("CREATE TABLE Radio_Sessions(
@@ -234,14 +236,14 @@
session VARCHAR(32),
url VARCHAR(255),
expires INTEGER NOT NULL DEFAULT 0,
- PRIMARY KEY(username,session))");
-
- //Table for delete profile requests
+ PRIMARY KEY(session))");
+
+ //Table for delete profile requests
$adodb->Execute("CREATE TABLE Delete_Request (
- code VARCHAR(300),
- expires INTEGER,
+ code VARCHAR(300),
+ expires INTEGER,
username VARCHAR(64) REFERENCES Users(username),
- PRIMARY KEY(code)");
+ PRIMARY KEY(code))");
$adodb->Execute("CREATE TABLE Scrobble_Track(
id SERIAL PRIMARY KEY,
@@ -263,6 +265,10 @@
uid2 INTEGER REFERENCES Users(uniqueid) ON DELETE CASCADE,
established INTEGER NOT NULL,
PRIMARY KEY (uid1, uid2))");
+
+ $adodb->Execute("CREATE TABLE Relationship_Flags (
+ flag VARCHAR(12),
+ PRIMARY KEY (flag))");
$adodb->Execute("CREATE TABLE User_Relationship_Flags (
uid1 INTEGER,
@@ -270,11 +276,8 @@
flag VARCHAR(12) REFERENCES Relationship_Flags(flag),
PRIMARY KEY (uid1, uid2, flag),
FOREIGN KEY (uid1, uid2) REFERENCES User_Relationships (uid1,
uid2))");
-
- $adodb->Execute("CREATE TABLE Relationship_Flags (
- flag VARCHAR(12),
- PRIMARY KEY (flag))");
-
+
+
$adodb->Execute("INSERT INTO Relationship_Flags VALUES ('contact')");
$adodb->Execute("INSERT INTO Relationship_Flags VALUES
('acquaintance')");
$adodb->Execute("INSERT INTO Relationship_Flags VALUES ('friend')");
@@ -321,7 +324,7 @@
$install_path = dirname(__FILE__) . "/";
//Write out the configuration
- $config = "<?php\n \$config_version = " . $version .";\n
\$connect_string = '" . $connect_string . "';\n \$submissions_server = '" .
$submissions_server . "';\n\ $install_path = '" . $install_path . "'; ";
+ $config = "<?php\n \$config_version = " . $version .";\n
\$connect_string = '" . $connect_string . "';\n \$submissions_server = '" .
$submissions_server . "';\n \$install_path = '" . $install_path . "';\n
\$adodb_connect_string = '" . $adodb_connect_string . "'; ";
$conf_file = fopen("config.php", "w");
$result = fwrite($conf_file, $config);
Modified: branches/stable/gnukebox/nowplaying/1.2/index.php
===================================================================
--- branches/stable/gnukebox/nowplaying/1.2/index.php 2009-05-16 00:22:39 UTC
(rev 1645)
+++ branches/stable/gnukebox/nowplaying/1.2/index.php 2009-05-16 00:43:25 UTC
(rev 1646)
@@ -20,7 +20,10 @@
require_once('../../database.php');
require_once('../../scrobble-utils.php');
+require_once('../../auth-utils.php');
+header("Content-Type: text/plain");
+
if(!isset($_POST['s']) || !isset($_POST['a']) || !isset($_POST['t'])) {
die("FAILED Required POST parameters are not set\n");
}
@@ -53,18 +56,13 @@
$mbid = 'NULL';
}
-createArtistIfNew($artist);
-if($album != 'NULL') {
- createAlbumIfNew($artist, $album);
-}
-getTrackCreateIfNew($artist, $album, $track, $mbid);
-
-//Expire old tracks
-$adodb->Execute("DELETE FROM Now_Playing WHERE expires < " . time());
-
//Delete this user's last playing song (if any)
$adodb->Execute("DELETE FROM Now_Playing WHERE sessionid = " . ($MQsess));
+if (!check_session($MQsess)) {
+ die("BADSESSION\n");
+}
+
try {
$adodb->Execute("INSERT INTO Now_Playing (sessionid, artist, album,
track, expires, mbid) VALUES ("
. $MQsess . ", "
@@ -78,6 +76,15 @@
die("FAILED " . $e->getMessage() . "\n");
}
+createArtistIfNew($artist);
+if($album != 'NULL') {
+ createAlbumIfNew($artist, $album);
+}
+getTrackCreateIfNew($artist, $album, $track, $mbid);
+
+//Expire old tracks
+$adodb->Execute("DELETE FROM Now_Playing WHERE expires < " . time());
+
die("OK\n");
?>
Modified: branches/stable/gnukebox/scrobble-utils.php
===================================================================
--- branches/stable/gnukebox/scrobble-utils.php 2009-05-16 00:22:39 UTC (rev
1645)
+++ branches/stable/gnukebox/scrobble-utils.php 2009-05-16 00:43:25 UTC (rev
1646)
@@ -21,7 +21,7 @@
require_once('database.php'); // include the database connection string
-function usernameFromSID($session_id)
+function usernameFromSID($session_id)
{
//derive the username from a session ID
@@ -198,7 +198,7 @@
$track = str_replace(' (PREVIEW: buy it at www.magnatune.com)', "", $track);
return $track;
-
+
}
function getAlbumArt($artist, $album) {
Modified: branches/stable/gnukebox/utils/human-time.php
===================================================================
--- branches/stable/gnukebox/utils/human-time.php 2009-05-16 00:22:39 UTC
(rev 1645)
+++ branches/stable/gnukebox/utils/human-time.php 2009-05-16 00:43:25 UTC
(rev 1646)
@@ -25,9 +25,9 @@
function human_timestamp ($unix_timestamp, $now = null) {
if (is_null($now)) {
- $now = time();
+ $now = time();
}
-
+
$diff = $now - $unix_timestamp;
# ugly!
Modified: branches/stable/gnukebox/version.php
===================================================================
--- branches/stable/gnukebox/version.php 2009-05-16 00:22:39 UTC (rev
1645)
+++ branches/stable/gnukebox/version.php 2009-05-16 00:43:25 UTC (rev
1646)
@@ -1,4 +1,4 @@
-<?php
+<?php
/* Libre.fm -- a free network service for sharing your music listening habits
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Librefm-commits] [1646] merge gnukebox from trunk,
Clint Adams <=