function copy_media($id, $newsitename)
{
    global $uploaddir;
    $oldsitename = db_get_value("media INNER JOIN slot ON media.FK_site = slot.FK_site", "slot_name", "media_id='" . addslashes($id) . "'");
    $file_name = db_get_value("media INNER JOIN slot ON media.FK_site = slot.FK_site", "media_tag", "media_id='" . addslashes($id) . "'");
    $sourcedir = "{$uploaddir}/{$oldsitename}";
    $destdir = "{$uploaddir}/{$newsitename}";
    $old_file_path = $sourcedir . "/" . $file_name;
    $new_file_path = $destdir . "/" . $file_name;
    if (!is_dir($destdir)) {
        mkdir($destdir, 0700);
        chmod($destdir, 0700);
    }
    if (file_exists($new_file_path)) {
        $newid = db_get_value("media INNER JOIN slot ON media.FK_site = slot.FK_site", "media_id", "slot_name='" . addslashes($newsitename) . "' && media_tag='" . addslashes($file_name) . "'");
    } else {
        $query = "\n\t\t\tSELECT \n\t\t\t\tis_published,\n\t\t\t\ttitle_whole,\n\t\t\t\ttitle_part,\n\t\t\t\tauthor,\n\t\t\t\tpagerange,\n\t\t\t\tpublisher,\n\t\t\t\tpubyear,\n\t\t\t\tisbn\n\t\t\tFROM \n\t\t\t\tmedia\n\t\t\t\t\tINNER JOIN\n\t\t\t\tslot\n\t\t\t\t\tON media.FK_site = slot.FK_site\n\t\t\t\t\tINNER JOIN\n\t\t\t\tuser\n\t\t\t\t\tON media.FK_createdby = user_id\n\t\t\tWHERE\n\t\t\t\tmedia_id='" . addslashes($id) . "'\n\t\t";
        // printpre($query);
        $r = db_query($query);
        $file = array();
        while ($a = db_fetch_assoc($r)) {
            $file['is_published'] = addslashes($a['is_published']);
            $file['title_whole'] = addslashes($a['title_whole']);
            $file['title_part'] = addslashes($a['title_part']);
            $file['author'] = addslashes($a['author']);
            $file['pagerange'] = addslashes($a['pagerange']);
            $file['publisher'] = addslashes($a['publisher']);
            $file['pubyear'] = addslashes($a['pubyear']);
            $file['isbn'] = addslashes($a['isbn']);
        }
        $file[name] = $file_name;
        $file[tmp_name] = $old_file_path;
        //		print_r ($file);
        //		print "<br />";
        $newid = copyuserfile($file, $newsitename, 0, 0, 1);
    }
    return $newid;
}
Exemple #2
0
            }
            if ($_FILES[file][size] + $totalsize > $dirlimit) {
                $upload_results = "<li>There is not enough room in your directory for {$filename}.";
            } else {
                if ($_REQUEST[overwrite] && $nameUsed) {
                    $newID = copyuserfile($_FILES['file'], $_REQUEST[site] ? "{$_REQUEST['site']}" : "{$settings['site']}", 1, $usedId, 0);
                    if ($newID && $newID != 'ERROR') {
                        $upload_results = "<li>{$filename} successfully uploaded to ID {$newID}. <li>The origional file was overwritten. <li>If the your new version does not appear, please reload your page. If the new version still doesn't appear, clear your browser cache.";
                    } else {
                        $upload_results = "<li>An error occurred when trying to upload " . $filename . ". <li>Please see above for any additional messages.";
                    }
                } else {
                    if ($nameUsed) {
                        $upload_results = "<li>Filename, {$filename}, is already in use. <li>Please change the filename before uploading or check \"overwrite\" to OVERWRITE";
                    } else {
                        $newID = copyuserfile($_FILES['file'], $_REQUEST[site] ? "{$_REQUEST['site']}" : "{$settings['site']}", 0, 0);
                        printpre($newID);
                        if ($newID && $newID != 'ERROR') {
                            $upload_results = "<li>{$filename} successfully uploaded to ID {$newID}";
                        } else {
                            $upload_results = "<li>An error occurred when trying to upload " . $filename . ". <li>Please see above for any additional messages.";
                        }
                    }
                }
            }
        }
    }
}
// If we've uploaded a file, then add any specified metadata
if ($upload && $newID || $_REQUEST['update_id']) {
    if ($_REQUEST['update_id']) {