From f4d94f034e6ca26d37244028d8ccb08ddbab0e8c Mon Sep 17 00:00:00 2001 From: Karl 'vollmerk' Vollmer Date: Mon, 19 Nov 2007 07:40:48 +0000 Subject: some inital work on an api for amarok, tweaked stream class a bit, think theres still a bug with some playlist methods, also need to confirm problem with IE --- lib/class/access.class.php | 27 ++++++++++++++++++ lib/class/api.class.php | 68 +++++++++++++++++++++++++++++++++++++++++++++ lib/class/update.class.php | 29 +++++++++++++++++++ lib/class/xmldata.class.php | 44 +++++++++++++++++++++++++++++ 4 files changed, 168 insertions(+) create mode 100644 lib/class/api.class.php create mode 100644 lib/class/xmldata.class.php (limited to 'lib/class') diff --git a/lib/class/access.class.php b/lib/class/access.class.php index e814ade6..379ee626 100644 --- a/lib/class/access.class.php +++ b/lib/class/access.class.php @@ -314,6 +314,33 @@ class Access { } // get_type_name + /** + * session_exists + * This checks to see if the specified session of the specified type + * exists, it also provides an array of key'd data that may be required + * based on the type + */ + public static function session_exists($data,$key,$type) { + + // Switch on the type they pass + switch ($type) { + case 'api': + + break; + case 'stream': + + break; + case 'interface': + + break; + default: + return false; + break; + } // type + + + } // session_exists + } //end of access class ?> diff --git a/lib/class/api.class.php b/lib/class/api.class.php new file mode 100644 index 00000000..fd34ff93 --- /dev/null +++ b/lib/class/api.class.php @@ -0,0 +1,68 @@ += '$ip' AND `end` <= '$ip'"; + $db_results = Dba::query($sql); + + while ($row = Dba::fetch_assoc($db_results)) { + + // Combine and MD5 this mofo + $md5pass = md5($timestamp . $row); + + } // end while + + } // handhsake + +} // API class +?> diff --git a/lib/class/update.class.php b/lib/class/update.class.php index e7b3a03c..2db1a0e2 100644 --- a/lib/class/update.class.php +++ b/lib/class/update.class.php @@ -238,6 +238,12 @@ class Update { '- Change wording on Localplay preferences.
'; $version[] = array('version' => '340010','description'=>$update_string); + $update_string = '- Adjusted Tables to new democratic play methods.
' . + '- Added api session table, will eventually recombine.
'; + + //$version[] = array('version' => '340011','description'=>$update_string); + + return $version; } // populate_version @@ -979,5 +985,28 @@ class Update { } // update_340010 + /** + * update_340011 + * This updates the democratic play stuff so that can handle a little more complext mojo + * It also adds yet another table to the db to handle the sessions for API access. Eventually + * should combine all of the session tables, but I'll do that later + */ + public static function update_340011() { + + // First add the new table for the new session stuff + $sql = "CREATE TABLE `session_api` ( " . + "`id` VARCHAR( 64 ) NOT NULL , " . + "`user` INT( 11 ) UNSIGNED NOT NULL , " . + "`agent` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL , " . + "`level` INT( 11 ) UNSIGNED NOT NULL DEFAULT '0', " . + "`expire` INT( 11 ) UNSIGNED NOT NULL , " . + "`ip` INT( 11 ) UNSIGNED NULL , " . + "PRIMARY KEY ( `id` ) " . + ") ENGINE = MYISAM"; + $db_results = Dba::query($sql); + + + } // 340011 + } // end update class ?> diff --git a/lib/class/xmldata.class.php b/lib/class/xmldata.class.php new file mode 100644 index 00000000..16eaeaeb --- /dev/null +++ b/lib/class/xmldata.class.php @@ -0,0 +1,44 @@ + -- cgit