librefm-commits
[Top][All Lists]
Advanced

[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">&copy; 2009 FooCorp</li>
+       <li class="copy">&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
 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]