Example #1
0
 private function make_directory_writable($path)
 {
     // provides fileop class.
     require_once AWPCP_DIR . '/fileop.class.php';
     $previous_umask = umask(0);
     $fileop = new fileop();
     if (!$fileop->set_permission($path, $this->get_default_directory_mode())) {
         $message = __('There was a problem trying to make directory <directory-name> writable.', 'AWPCP');
         $message = str_replace('<directory-name>', awpcp_utf8_basename($path), $message);
         throw new AWPCP_Exception($message);
     }
     umask($previous_umask);
     return $path;
 }
Example #2
0
/**
 * Verifies the upload directories exists and have proper permissions, then
 * returns the path to the directories to store raw files and image thumbnails.
 *
 * @since 3.0.2
 * @deprecated 3.4
 */
function awpcp_get_uploads_directories()
{
    static $uploads_directories = null;
    if (is_null($uploads_directories)) {
        global $wpcontentdir;
        $permissions = awpcp_directory_permissions();
        $upload_dir_name = get_awpcp_option('uploadfoldername', 'uploads');
        $upload_dir = $wpcontentdir . '/' . $upload_dir_name . '/';
        // Required to set permission on main upload directory
        require_once AWPCP_DIR . '/fileop.class.php';
        $fileop = new fileop();
        $owner = fileowner($wpcontentdir);
        if (!is_dir($upload_dir) && is_writable($wpcontentdir)) {
            umask(0);
            mkdir($upload_dir, $permissions);
            chown($upload_dir, $owner);
        }
        $fileop->set_permission($upload_dir, $permissions);
        $files_dir = $upload_dir . 'awpcp/';
        $thumbs_dir = $upload_dir . 'awpcp/thumbs/';
        if (!is_dir($files_dir) && is_writable($upload_dir)) {
            umask(0);
            @mkdir($files_dir, $permissions);
            @chown($files_dir, $owner);
        }
        if (!is_dir($thumbs_dir) && is_writable($upload_dir)) {
            umask(0);
            @mkdir($thumbs_dir, $permissions);
            @chown($thumbs_dir, $owner);
        }
        $fileop->set_permission($files_dir, $permissions);
        $fileop->set_permission($thumbs_dir, $permissions);
        $uploads_directories = array('files_dir' => $files_dir, 'thumbnails_dir' => $thumbs_dir);
    }
    return $uploads_directories;
}