Example #1
0
function parseSet($tempFolderPath)
{
    $albums = array();
    $dir = opendir("{$tempFolderPath}");
    while (false !== ($album = readdir($dir))) {
        if ($album != "." && $album != "..") {
            $thisAlbumPath = $tempFolderPath . "/" . $album;
            $innerdir = opendir("{$thisAlbumPath}");
            print $thisAlbumPath . " is getting processed<br>";
            $albums[$album] = parseAlbum($thisAlbumPath, $album);
        }
    }
    uksort($albums, "strnatcasecmp");
    //ksort($albums, SORT_STRING);
    foreach ($albums as $key => $value) {
        $xmlString .= "<album name=\"{$key}\">\n";
        foreach ($value as $value2) {
            $xmlString .= " <image name=\"" . $value2["name"] . "\">\n";
            $xmlString .= "\t <comment>" . $value2["comment"] . "</comment>\n";
            $xmlString .= "\t <tURL>" . $value2["tURL"] . "</tURL>\n";
            $xmlString .= "\t <lURL>" . $value2["lURL"] . "</lURL>\n";
            $xmlString .= " </image>\n";
        }
        $xmlString .= "</album>\n";
    }
    return $xmlString;
}
Example #2
0
     $totalResults = max(intval($n->nodeValue), $totalResults);
     if ($itemsPerPage !== 0) {
         $totalPages = ceil($totalResults / $itemsPerPage);
     }
     break;
 case 'opensearch:startIndex':
     $startIndex = intval($n->nodeValue);
     break;
 case 'opensearch:itemsPerPage':
     $itemsPerPage = intval($n->nodeValue);
     if ($totalResults !== 0) {
         $totalPages = ceil($totalResults / $itemsPerPage);
     }
     break;
 case 'album':
     $album = parseAlbum($n);
     $album_uri = xe($album->uri);
     $available_date = xe($date);
     $artists = array();
     $database->beginTransaction();
     foreach ($album->artists as $artist) {
         $parse_artist_uri = explode(":", $artist->uri);
         $artists[] = $parse_artist_uri[2];
         $query = $database->prepare('INSERT IGNORE INTO artists (id, name) VALUES (:id, :name)');
         $query->bindParam(':id', $parse_artist_uri[2], PDO::PARAM_STR);
         $query->bindParam(':name', $artist->name, PDO::PARAM_STR);
         $query->execute();
     }
     $database->commit();
     $database->beginTransaction();
     $query = $database->prepare('INSERT INTO albums (id, upc, name, release_date, availability, popularity, tracks, image, artists, genres) VALUES (:id, :upc, :name, NOW(), :availability, :popularity, :tracks, :image, :artists, :genres) ON DUPLICATE KEY UPDATE popularity=:popularity');