function music_upload($file_name, &$space_left)
 {
     global $database, $url, $user;
     // SET KEY VARIABLES
     $file_maxsize = $user->level_info['level_music_maxsize'];
     $file_exts = explode(",", str_replace(" ", "", strtolower($user->level_info['level_music_exts'])));
     $file_types = explode(",", str_replace(" ", "", strtolower($user->level_info['level_music_mimes'])));
     $new_music = new se_upload();
     $new_music->new_upload($file_name, $file_maxsize, $file_exts, $file_types);
     // CHECK SPACE LEFT
     if ($new_music->file_size > $space_left) {
         $new_music->is_error = 4000087;
     } else {
         $space_left = $space_left - $file_filesize;
     }
     if (!$new_music->is_error) {
         // GENERATE TITLE
         $myId3 = new ID3($file_dest);
         if ($myId3->getInfo()) {
             $id3_artist = trim($myId3->getArtist());
             $id3_title = trim($myId3->getTitle());
             if ($id3_artist && $id3_title) {
                 $music_title = $id3_artist . ' - ' . $id3_title;
             }
         }
         if (!trim($music_title)) {
             $music_title = $new_music->file_name;
         }
         $music_title = security(censor($music_title));
         // INSERT ROW INTO MUSIC TABLE
         $time = time();
         $track_num = $database->database_fetch_array($database->database_query("SELECT music_track_num as track FROM se_music WHERE music_user_id = '{$this->user_id}' ORDER BY music_track_num DESC LIMIT 1"));
         $track_num = $track_num['track'] + 1;
         $database->database_query("\r\n        INSERT INTO se_music\r\n        (\r\n          music_user_id,\r\n          music_track_num,\r\n          music_date,\r\n          music_title,\r\n          music_ext,\r\n          music_filesize\r\n        )\r\n        VALUES\r\n        (\r\n          '{$this->user_id}',\r\n          '{$track_num}',\r\n          '{$time}',\r\n          '{$music_title}',\r\n          '{$new_music->file_ext}',\r\n          '{$new_music->file_size}'\r\n        )\r\n      ");
         $music_id = $database->database_insert_id();
         // MOVE UPLOADED FILE
         $file_dest = $url->url_userdir($user->user_info[user_id]) . $music_id . "." . $new_music->file_ext;
         $new_music->upload_file($file_dest);
     }
     // RETURN AND DELETE FROM DATABASE IF ERROR
     if ($new_music->is_error) {
         if ($music_id) {
             $database->database_query("DELETE FROM se_music WHERE music_id='{$music_id}' && music_user_id='{$this->user_id}'");
         }
         if ($file_dest) {
             @unlink($file_dest);
         }
         return array('is_error' => $new_music->is_error);
     }
     // RETURN FILE STATS
     return array('music_id' => $music_id, 'music_ext' => $new_music->file_ext, 'music_filesize' => $new_music->file_size, 'music_title' => $music_title);
 }
Beispiel #2
0
 function album_media_upload($file_name, $album_id, &$space_left)
 {
     global $database, $url, $user;
     // SET KEY VARIABLES
     $file_maxsize = $user->level_info[level_album_maxsize];
     $file_exts = explode(",", str_replace(" ", "", strtolower($user->level_info[level_album_exts])));
     $file_types = explode(",", str_replace(" ", "", strtolower($user->level_info[level_album_mimes])));
     $file_maxwidth = $user->level_info[level_album_width];
     $file_maxheight = $user->level_info[level_album_height];
     $new_media = new se_upload();
     $new_media->new_upload($file_name, $file_maxsize, $file_exts, $file_types, $file_maxwidth, $file_maxheight);
     // UPLOAD AND RESIZE PHOTO IF NO ERROR
     if ($new_media->is_error == 0) {
         // GET MAX ORDER
         $max = $database->database_fetch_assoc($database->database_query("SELECT max(media_order) AS max FROM se_media LEFT JOIN se_albums ON se_media.media_album_id=se_albums.album_id WHERE se_albums.album_user_id='" . $user->user_info[user_id] . "'"));
         $media_order = $max[max] + 1;
         // INSERT ROW INTO MEDIA TABLE
         $database->database_query("\r\n        INSERT INTO se_media (\r\n          media_album_id,\r\n          media_date,\r\n          media_order\r\n        ) VALUES (\r\n          '{$album_id}',\r\n          '" . time() . "',\r\n          '{$media_order}'\r\n        )\r\n      ");
         $media_id = $database->database_insert_id();
         // CHECK IF IMAGE RESIZING IS AVAILABLE, OTHERWISE MOVE UPLOADED IMAGE
         if ($new_media->is_image == 1) {
             $file_dest = $url->url_userdir($user->user_info[user_id]) . $media_id . ".jpg";
             $thumb_dest = $url->url_userdir($user->user_info[user_id]) . $media_id . "_thumb.jpg";
             // UPLOAD THUMB
             $new_media->upload_thumb($thumb_dest, 200);
             // UPLOAD FILE
             $new_media->upload_photo($file_dest);
             $file_ext = "jpg";
             $file_filesize = filesize($file_dest);
         } else {
             $file_dest = $url->url_userdir($user->user_info[user_id]) . $media_id . "." . $new_media->file_ext;
             // UPLOAD THUMB IF NECESSARY
             if ($new_media->file_ext == 'gif') {
                 $thumb_dest = $url->url_userdir($user->user_info[user_id]) . $media_id . "_thumb.jpg";
                 $new_media->upload_thumb($thumb_dest, 200);
             }
             // MOVE FILE
             $new_media->upload_file($file_dest);
             $file_ext = $new_media->file_ext;
             $file_filesize = filesize($file_dest);
         }
         if (!is_numeric($file_filesize)) {
             $file_filesize = 0;
         }
         // CHECK SPACE LEFT
         if ($file_filesize > $space_left) {
             $new_media->is_error = 1000085;
         } else {
             $space_left = $space_left - $file_filesize;
         }
         // DELETE FROM DATABASE IF ERROR
         if ($new_media->is_error != 0) {
             $database->database_query("DELETE FROM se_media WHERE media_id='{$media_id}' AND media_album_id='{$album_id}'");
             @unlink($file_dest);
         } else {
             $database->database_query("UPDATE se_media SET media_ext='{$file_ext}', media_filesize='{$file_filesize}' WHERE media_id='{$media_id}' AND media_album_id='{$album_id}' LIMIT 1");
             $database->database_query("UPDATE se_albums SET album_totalfiles=album_totalfiles+1, album_totalspace=album_totalspace+'{$file_filesize}' WHERE album_id='{$album_id}' LIMIT 1");
         }
     }
     // RETURN FILE STATS
     $file_result = array('is_error' => $new_media->is_error, 'file_name' => $_FILES[$file_name]['name'], 'media_id' => $media_id, 'media_ext' => $file_ext, 'media_filesize' => $file_filesize);
     return $file_result;
 }
 function forum_media_new($topic_id)
 {
     global $database;
     // SET KEY VARIABLES
     $forummedia_id = 0;
     $file_maxsize = 2048000;
     $file_exts = array('jpg', 'jpeg', 'gif', 'png', 'bmp');
     $file_types = array('image/jpeg', 'image/pjpeg', 'image/jpg', 'image/jpe', 'image/pjpg', 'image/x-jpeg', 'image/x-jpg', 'image/gif', 'image/x-gif', 'image/png', 'image/x-png', 'image/bmp');
     $file_maxwidth = 650;
     $file_maxheight = 1000;
     // START NEW UPLOAD
     $new_media = new se_upload();
     $new_media->new_upload('post_media', $file_maxsize, $file_exts, $file_types, $file_maxwidth, $file_maxheight);
     // UPLOAD AND RESIZE PHOTO IF NO ERROR
     if ($new_media->is_error == 0) {
         // INSERT ROW INTO MEDIA TABLE
         $database->database_query("INSERT INTO se_forummedia (forummedia_forumtopic_id) VALUES ('{$topic_id}')");
         $forummedia_id = $database->database_insert_id();
         // CHECK IF IMAGE RESIZING IS AVAILABLE, OTHERWISE MOVE UPLOADED IMAGE
         if ($new_media->is_image == 1) {
             // MAKE SURE SUBDIRECTORY EXISTS
             $subdir = './uploads_forum/' . $topic_id . '/';
             if (!is_dir($subdir)) {
                 mkdir($subdir, 0777);
                 chmod($subdir, 0777);
             }
             $file_dest = $subdir . $forummedia_id . ".jpg";
             // UPLOAD FILE
             $new_media->upload_photo($file_dest);
             $file_ext = "jpg";
             $file_filesize = filesize($file_dest);
         } else {
             // MAKE SURE SUBDIRECTORY EXISTS
             $subdir = './uploads_forum/' . $topic_id . '/';
             if (!is_dir($subdir)) {
                 mkdir($subdir, 0777);
                 chmod($subdir, 0777);
             }
             $file_dest = $subdir . $forummedia_id . "." . $new_media->file_ext;
             $new_media->upload_file($file_dest);
             $file_ext = $new_media->file_ext;
             $file_filesize = filesize($file_dest);
         }
         // DELETE FROM DATABASE IF ERROR
         if ($new_media->is_error) {
             $database->database_query("DELETE FROM se_forummedia WHERE forummedia_id='{$forummedia_id}' AND forummedia_forumtopic_id='{$topic_id}'");
             @unlink($file_dest);
             $forummedia_id = 0;
             // UPDATE ROW IF NO ERROR
         } else {
             $database->database_query("UPDATE se_forummedia SET forummedia_ext='{$file_ext}', forummedia_filesize='{$file_filesize}' WHERE forummedia_id='{$forummedia_id}' AND forummedia_forumtopic_id='{$topic_id}'");
         }
     }
     return $forummedia_id;
 }
Beispiel #4
0
	function article_media_upload($file_name, $articlealbum_id, &$space_left) {
	  global $class_article, $database, $url;

	  // SET KEY VARIABLES
	  $file_maxsize = $this->articleowner_level_info[level_article_album_maxsize];
	  $file_exts = explode(",", str_replace(" ", "", strtolower($this->articleowner_level_info[level_article_album_exts])));
	  $file_types = explode(",", str_replace(" ", "", strtolower($this->articleowner_level_info[level_article_album_mimes])));
	  $file_maxwidth = $this->articleowner_level_info[level_article_album_width];
	  $file_maxheight = $this->articleowner_level_info[level_article_album_height];

	  $new_media = new se_upload();
	  $new_media->new_upload($file_name, $file_maxsize, $file_exts, $file_types, $file_maxwidth, $file_maxheight);

	  // UPLOAD AND RESIZE PHOTO IF NO ERROR
	  if($new_media->is_error == 0) {

	    // INSERT ROW INTO MEDIA TABLE
	    $database->database_query("INSERT INTO se_articlemedia (
							articlemedia_articlealbum_id,
							articlemedia_date
							) VALUES (
							'$articlealbum_id',
							'".time()."'
							)");
	    $articlemedia_id = $database->database_insert_id();

	    // CHECK IF IMAGE RESIZING IS AVAILABLE, OTHERWISE MOVE UPLOADED IMAGE
	    if($new_media->is_image == 1) {
	      $file_dest = $this->article_dir($this->article_info[article_id]).$articlemedia_id.".jpg";
	      $thumb_dest = $this->article_dir($this->article_info[article_id]).$articlemedia_id."_thumb.jpg";
	      $new_media->upload_photo($file_dest);
	      $new_media->upload_photo($thumb_dest, 200, 200);
	      $file_ext = "jpg";
	      $file_filesize = filesize($file_dest);
	    } else {
	      $file_dest = $this->article_dir($this->article_info[article_id]).$articlemedia_id.".".$new_media->file_ext;
	      $new_media->upload_file($file_dest);
	      $file_ext = $new_media->file_ext;
	      $file_filesize = filesize($file_dest);
	    }

	    // CHECK SPACE LEFT
	    if($file_filesize > $space_left) {
	      $new_media->is_error = 1;
	      $new_media->error_message = $class_article[1].$_FILES[$file_name]['name'];
	    } else {
	      $space_left = $space_left-$file_filesize;
	    }

	    // DELETE FROM DATABASE IF ERROR
	    if($new_media->is_error != 0) {
	      $database->database_query("DELETE FROM se_articlemedia WHERE articlemedia_id='$articlemedia_id' AND articlemedia_articlealbum_id='$articlealbum_id'");
	      @unlink($file_dest);

	    // UPDATE ROW IF NO ERROR
	    } else {
	      $database->database_query("UPDATE se_articlemedia SET articlemedia_ext='$file_ext', articlemedia_filesize='$file_filesize' WHERE articlemedia_id='$articlemedia_id' AND articlemedia_articlealbum_id='$articlealbum_id'");
	    }
	  }
	
	  // RETURN FILE STATS
	  $file = Array('is_error' => $new_media->is_error,
			'error_message' => $new_media->error_message,
			'articlemedia_id' => $articlemedia_id,
			'articlemedia_ext' => $file_ext,
			'articlemedia_filesize' => $file_filesize);
	  return $file;

	} // END article_media_upload() METHOD
Beispiel #5
0
 function user_photo_upload($photo_name)
 {
     global $database, $url;
     // ENSURE USER DIRECTORY IS ADDED
     $user_directory = $url->url_userdir($this->user_info['user_id']);
     $user_path_array = explode("/", $user_directory);
     array_pop($user_path_array);
     array_pop($user_path_array);
     $subdir = implode("/", $user_path_array) . "/";
     if (!is_dir($subdir)) {
         mkdir($subdir, 0777);
         chmod($subdir, 0777);
         $handle = fopen($subdir . "index.php", 'x+');
         fclose($handle);
     }
     if (!is_dir($user_directory)) {
         mkdir($user_directory, 0777);
         chmod($user_directory, 0777);
         $handle = fopen($user_directory . "/index.php", 'x+');
         fclose($handle);
     }
     // SET KEY VARIABLES
     $file_maxsize = "4194304";
     $file_exts = explode(",", str_replace(" ", "", strtolower($this->level_info['level_photo_exts'])));
     $file_types = explode(",", str_replace(" ", "", strtolower("image/jpeg, image/jpg, image/jpe, image/pjpeg, image/pjpg, image/x-jpeg, x-jpg, image/gif, image/x-gif, image/png, image/x-png")));
     $file_maxwidth = $this->level_info['level_photo_width'];
     $file_maxheight = $this->level_info['level_photo_height'];
     $photo_newname = "0_" . rand(1000, 9999) . ".jpg";
     $file_dest = $url->url_userdir($this->user_info['user_id']) . $photo_newname;
     $thumb_dest = substr($file_dest, 0, strrpos($file_dest, ".")) . "_thumb" . substr($file_dest, strrpos($file_dest, "."));
     $new_photo = new se_upload();
     $new_photo->new_upload($photo_name, $file_maxsize, $file_exts, $file_types, $file_maxwidth, $file_maxheight);
     // UPLOAD AND RESIZE PHOTO IF NO ERROR
     if (!$new_photo->is_error) {
         // DELETE OLD AVATAR IF EXISTS
         $this->user_photo_delete();
         // UPLOAD THUMB
         $new_photo->upload_thumb($thumb_dest);
         // CHECK IF IMAGE RESIZING IS AVAILABLE, OTHERWISE MOVE UPLOADED IMAGE
         if ($new_photo->is_image) {
             $new_photo->upload_photo($file_dest);
         } else {
             $new_photo->upload_file($file_dest);
         }
         // UPDATE USER INFO WITH IMAGE IF STILL NO ERROR
         if (!$new_photo->is_error) {
             $database->database_query("UPDATE se_users SET user_photo='{$photo_newname}' WHERE user_id='{$this->user_info['user_id']}' LIMIT 1");
             $this->user_info['user_photo'] = $photo_newname;
         }
     }
     $this->is_error = $new_photo->is_error;
 }
    // SET KEY VARIABLES
    $file_maxsize = "307200";
    $file_exts = array('jpg', 'jpeg', 'gif', 'png');
    $file_types = array('image/jpeg', 'image/jpg', 'image/jpe', 'image/pjpeg', 'image/pjpg', 'image/x-jpeg', 'x-jpg', 'image/gif', 'image/x-gif', 'image/png', 'image/x-png');
    $file_maxwidth = "1000";
    $file_maxheight = "1000";
    $ext = str_replace(".", "", strrchr($_FILES['file1']['name'], "."));
    $rand = rand(100000000, 999999999);
    $photo_newname = "banner{$rand}." . $ext;
    $file_dest = "../uploads_admin/ads/{$photo_newname}";
    $photo_name = "file1";
    $new_photo = new se_upload();
    $new_photo->new_upload($photo_name, $file_maxsize, $file_exts, $file_types, $file_maxwidth, $file_maxheight);
    // UPLOAD BANNER IF NO ERROR
    if ($new_photo->is_error == 0) {
        $new_photo->upload_file($file_dest);
    }
    echo "<html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><script type='text/javascript'>";
    echo "window.parent.uploadbanner_result('{$photo_newname}', '" . $new_photo->is_error . "');";
    echo "</script></head><body></body></html>";
    exit;
    // SAVE CAMPAIGN
} elseif ($task == "dosave") {
    $ad_html = $_POST['ad_html'];
    $ad_name = $_POST['ad_name'];
    $ad_date_start_month = $_POST['ad_date_start_month'];
    $ad_date_start_day = $_POST['ad_date_start_day'];
    $ad_date_start_year = $_POST['ad_date_start_year'];
    $ad_date_start_hour = $_POST['ad_date_start_hour'];
    $ad_date_start_minute = $_POST['ad_date_start_minute'];
    $ad_date_start_ampm = $_POST['ad_date_start_ampm'];
Beispiel #7
0
 function event_media_upload($file_name, $eventalbum_id, &$space_left)
 {
     global $class_event, $database, $url;
     // SET KEY VARIABLES
     $file_maxsize = $this->eventowner_level_info['level_event_album_maxsize'];
     $file_exts = explode(",", str_replace(" ", "", strtolower($this->eventowner_level_info['level_event_album_exts'])));
     $file_types = explode(",", str_replace(" ", "", strtolower($this->eventowner_level_info['level_event_album_mimes'])));
     $file_maxwidth = $this->eventowner_level_info['level_event_album_width'];
     $file_maxheight = $this->eventowner_level_info['level_event_album_height'];
     $time = time();
     $new_media = new se_upload();
     $new_media->new_upload($file_name, $file_maxsize, $file_exts, $file_types, $file_maxwidth, $file_maxheight);
     // UPLOAD AND RESIZE PHOTO IF NO ERROR
     if (!$new_media->is_error) {
         // INSERT ROW INTO MEDIA TABLE
         $sql = "\r\n        INSERT INTO se_eventmedia\r\n          (eventmedia_eventalbum_id, eventmedia_date)\r\n        VALUES\r\n        ('{$eventalbum_id}', '{$time}')\r\n      ";
         $resource = $database->database_query($sql);
         $eventmedia_id = $database->database_insert_id();
         // CHECK IF IMAGE RESIZING IS AVAILABLE, OTHERWISE MOVE UPLOADED IMAGE
         $event_dir = $this->event_dir($this->event_info['event_id']);
         if ($new_media->is_image) {
             $file_dest = "{$event_dir}{$eventmedia_id}.jpg";
             $thumb_dest = "{$event_dir}{$eventmedia_id}_thumb.jpg";
             // UPLOAD THUMB
             $new_media->upload_thumb($thumb_dest, 200);
             // UPLOAD PHOTO
             $new_media->upload_photo($file_dest);
             $file_ext = "jpg";
             $file_filesize = filesize($file_dest);
         } else {
             $file_dest = "{$event_dir}{$eventmedia_id}.{$new_media->file_ext}";
             $thumb_dest = "{$event_dir}{$eventmedia_id}_thumb.jpg";
             if ($new_media->file_ext == 'gif') {
                 $new_media->upload_thumb($thumb_dest, 200);
             }
             $new_media->upload_file($file_dest);
             $file_ext = $new_media->file_ext;
             $file_filesize = filesize($file_dest);
         }
         // CHECK SPACE LEFT
         if ($space_left !== FALSE && $file_filesize > $space_left) {
             $new_media->is_error = 1;
             $new_media->error_message = $class_event[1] . $_FILES[$file_name]['name'];
             // TODO LANG
         } elseif ($space_left !== FALSE) {
             $space_left = $space_left - $file_filesize;
         }
         // DELETE FROM DATABASE IF ERROR
         if ($new_media->is_error) {
             $sql = "DELETE FROM se_eventmedia WHERE eventmedia_id='{$eventmedia_id}' AND eventmedia_eventalbum_id='{$eventalbum_id}'";
             $resource = $database->database_query($sql);
             @unlink($file_dest);
         } else {
             $sql = "UPDATE se_eventmedia SET eventmedia_ext='{$file_ext}', eventmedia_filesize='{$file_filesize}' WHERE eventmedia_id='{$eventmedia_id}' AND eventmedia_eventalbum_id='{$eventalbum_id}'";
             $resource = $database->database_query($sql);
             if (!is_numeric($file_filesize)) {
                 $file_filesize = 0;
             }
             $sql = "UPDATE se_eventalbums SET eventalbum_totalfiles=eventalbum_totalfiles+1, eventalbum_totalspace=eventalbum_totalspace+'{$file_filesize}' WHERE eventalbum_id='{$eventalbum_id}' LIMIT 1";
             $resource = $database->database_query($sql);
         }
     }
     // IF ERROR
     if ($new_media->is_error) {
         $new_media->error_message = $_FILES[$file_name]['name'] . " - " . SE_Language::get($new_media->is_error);
     }
     // RETURN FILE STATS
     return array('is_error' => $new_media->is_error, 'error_message' => $new_media->error_message, 'file_name' => $_FILES[$file_name]['name'], 'eventmedia_id' => $eventmedia_id, 'eventmedia_ext' => $file_ext, 'eventmedia_filesize' => $file_filesize);
 }
Beispiel #8
0
 $rand = rand(100000000, 999999999);
 if ($ext != "") {
     $file_newname = "doc_{$rand}." . "{$ext}";
 }
 $user_id = $user->user_info['user_id'];
 $subdir = "./uploads_document/{$user_id}";
 if (!is_dir($subdir)) {
     mkdir($subdir, 0777);
     chmod($subdir, 0777);
 }
 $file_dest = "{$subdir}/{$file_newname}";
 $file_name = "document";
 $new_file = new se_upload();
 $new_file->new_upload($file_name, $file_maxsize, $file_exts, $file_types, $file_maxwidth, $file_maxheight);
 if ($new_file->is_error == 0) {
     $new_file->upload_file($file_dest);
     $time = time();
     $starttime = time();
     $file_scribd = $file_dest;
     $doc_type = null;
     $download = "view-only";
     $rev_id = $document['document_doc_id'];
     // Uploading the document from our server to Scribd's Server
     try {
         $data = $scribd->upload($file_scribd, $doc_type, $access, $rev_id, $download, $document_secure);
     } catch (Exception $e) {
         $message = $e->getMessage();
         $excep_error = 1;
         $smarty->assign('excep_message', $message);
     }
     if (!empty($data['doc_id'])) {
Beispiel #9
0
 function video_upload($file_name)
 {
     global $database, $url, $setting, $user;
     // Check exists and owner
     if (!$this->video_exists || $this->video_info['video_user_id'] != $this->user_id) {
         return FALSE;
     }
     // SET KEY VARIABLES
     $file_maxsize = $user->level_info['level_video_maxsize'];
     $file_exts = explode(",", str_replace(" ", "", strtolower($setting['setting_video_exts'])));
     $file_types = explode(",", str_replace(" ", "", strtolower($setting['setting_video_mime'])));
     // IF FILE EXTS AND MIMES ARE EMPTY, FILL IN WITH VIDEO'S EXT/TYPE
     if (trim($setting['setting_video_exts']) == "") {
         $file_exts[] = strtolower(str_replace(".", "", strrchr($_FILES[$file_name]['name'], ".")));
     }
     if (trim($setting['setting_video_mime']) == "") {
         $file_types[] = strtolower($_FILES[$file_name]['type']);
     }
     $video_ext = strtolower(str_replace(".", "", strrchr($_FILES[$file_name]['name'], ".")));
     // CHECK THAT UPLOAD DIRECTORY EXISTS, IF NOT THEN CREATE
     $video_directory = $this->video_dir($this->user_id, TRUE);
     // CHECK FOR ERRORS
     $new_video = new se_upload();
     $new_video->new_upload($file_name, $file_maxsize, $file_exts, $file_types);
     // UPLOAD VIDEO IF NO ERROR
     if (!$new_video->is_error) {
         // SET FILE DESTINATION
         $video_id = $this->video_info['video_id'];
         $new_filename = $video_id;
         $file_dest = $this->video_dir($this->user_id) . $new_filename . ".original." . $video_ext;
         // MOVE FILE
         $new_video->upload_file($file_dest);
         // (DON'T) DELETE FROM DATABASE IF ERROR
         if ($new_video->is_error) {
             /*
             $database->database_query("DELETE FROM se_videos WHERE video_id='{$video_id}' AND video_user_id='{$user->user_info['user_id']}'");
             @unlink($file_dest);
             */
         } else {
             // SET UPLOADED STATUS IN DATABASE
             $sql = "UPDATE se_videos SET video_uploaded=1 WHERE video_id='{$video_id}' LIMIT 1";
             $database->database_query($sql);
             // PREPARE SHELL SCRIPT INFO
             $linebreak = "\n";
             $directory = getcwd() . substr($this->video_dir($this->user_id), 1);
             // ffmpeg doc
             // http://ffmpeg.mplayerhq.hu/ffmpeg-doc.html
             // WRITE SHELL SCRIPT
             $duration_session = rand(1, 9999);
             $cwd = getcwd();
             $shell_script = "touch {$cwd}/uploads_video/encoding/queue/{$new_filename}" . $linebreak;
             $shell_script .= "FULLOUTPUT{$duration_session}=\$({$setting['setting_video_ffmpeg_path']} -i {$directory}{$new_filename}.original.{$video_ext} -ab 64k -ar 44100 -qscale 5 -vcodec flv -f flv -r 25 -s {$setting['setting_video_width']}x{$setting['setting_video_height']} {$directory}{$new_filename}.flv  2>&1)" . $linebreak;
             if ($this->debug) {
                 $shell_script .= "echo \$FULLOUTPUT{$duration_session} > {$cwd}/uploads_video/encoding/debug/{$new_filename}.ffmpeg.log" . $linebreak;
             }
             $shell_script .= "DURATION{$duration_session}=\$(echo \$FULLOUTPUT{$duration_session} | grep -o --perl-regexp '[Dd]uration.{1,3}([0-9][0-9]:[0-9][0-9]:[0-9][0-9])' | grep -o [0-9][0-9]:[0-9][0-9]:[0-9][0-9])" . $linebreak;
             //$shell_script .= "DURATION{$duration_session}=$(echo \$FULLOUTPUT{$duration_session} | grep Duration | grep -o [0-9][0-9]:[0-9][0-9]:[0-9][0-9])".$linebreak;
             //$shell_script .= "DURATION{$duration_session}=$({$setting['setting_video_ffmpeg_path']} -i {$directory}{$new_filename} -ab 64k -vcodec flv -f flv -r 25 -s {$setting['setting_video_width']}x{$setting['setting_video_height']} {$directory}{$new_filename}.flv  2>&1 | grep Duration | grep -o [0-9][0-9]:[0-9][0-9]:[0-9][0-9])".$linebreak;
             $shell_script .= "{$setting['setting_video_ffmpeg_path']} -i {$directory}{$new_filename}.flv -s {$setting['setting_video_thumb_width']}x{$setting['setting_video_thumb_height']} -f image2 -ss 4.00 -vframes 1 {$directory}{$new_filename}_thumb.jpg" . $linebreak;
             //$shell_script .= "{$setting['setting_video_ffmpeg_path']} -i {$directory}{$new_filename}.flv -s {$setting['setting_video_thumb_width']}x{$setting['setting_video_thumb_height']} -f image2 -ss 4.00 -vframes 1 -pix_fmt jpeg {$directory}{$new_filename}_thumb.jpg".$linebreak;
             $shell_script .= "rm --force {$directory}{$new_filename}.original.{$video_ext}" . $linebreak;
             $shell_script .= "mv {$cwd}/uploads_video/encoding/queue/{$new_filename} \"{$cwd}/uploads_video/encoding/queue/{$new_filename}_complete_{$video_id}_\$DURATION{$duration_session}\"" . $linebreak;
             // PUT SHELL SCRIPT IN DIR
             if (!($fh = fopen(getcwd() . '/uploads_video/encoding/jobs/' . $new_filename, 'w'))) {
                 $database->database_query("DELETE FROM se_videos WHERE video_id='{$video_id}' AND video_user_id='{$user->user_info['user_id']}'");
                 @unlink($directory . $new_filename);
                 @unlink($file_dest);
                 $new_video->is_error = 5500077;
             } else {
                 fwrite($fh, $shell_script);
                 fclose($fh);
                 chmod(getcwd() . '/uploads_video/encoding/jobs/' . $new_filename, 0777);
             }
         }
     }
     // RETURN FILE STATS
     $file_result = array('is_error' => $new_video->is_error);
     return $file_result;
 }
function he_wall_custom_music_upload($new_action_id)
{
    global $user, $url, $setting;
    $max_filesize = (int) $setting['setting_he_wall_music_filesize'] * 1024;
    $file_exts = explode(',', $setting['setting_he_wall_music_exts']);
    $file_exts = array_map('trim', $file_exts);
    $file_types = explode(',', $setting['setting_he_wall_music_mimes']);
    $file_types = array_map('trim', $file_types);
    $new_upload = new se_upload();
    $he_upload = new he_upload($user->user_info['user_id'], 'wall_music');
    $new_upload->new_upload('wall_music', $max_filesize, $file_exts, $file_types);
    if ($new_upload->is_error) {
        $result = array('result' => 0, 'error' => SE_Language::get($new_upload->is_error));
    } else {
        $title = $new_upload->file_name;
        $upload_id = $he_upload->new_upload($new_action_id, 'wall_music', $title);
        $filename = "{$he_upload->instance_type}_{$upload_id}.{$new_upload->file_ext}";
        $new_upload->upload_file("./uploads_wall/{$filename}");
        if ($new_upload->is_error) {
            $he_upload->delete_upload($upload_id);
            $result = array('result' => 0, 'error' => SE_Language::get($new_upload->is_error));
        } else {
            $he_upload->save_upload($upload_id, $filename);
            $file_url = $url->url_base . 'uploads_wall/' . $filename;
            $result = array('result' => 1, 'file_url' => $file_url, 'title' => $title);
        }
    }
    return $result;
}
Beispiel #11
0
 function group_media_upload($file_name, $groupalbum_id, &$space_left)
 {
     global $database, $url, $user;
     // SET KEY VARIABLES
     $file_maxsize = $this->groupowner_level_info['level_group_album_maxsize'];
     $file_exts = explode(",", str_replace(" ", "", strtolower($this->groupowner_level_info['level_group_album_exts'])));
     $file_types = explode(",", str_replace(" ", "", strtolower($this->groupowner_level_info['level_group_album_mimes'])));
     $file_maxwidth = $this->groupowner_level_info['level_group_album_width'];
     $file_maxheight = $this->groupowner_level_info['level_group_album_height'];
     $new_media = new se_upload();
     $new_media->new_upload($file_name, $file_maxsize, $file_exts, $file_types, $file_maxwidth, $file_maxheight);
     // UPLOAD AND RESIZE PHOTO IF NO ERROR
     if ($new_media->is_error == 0) {
         // INSERT ROW INTO MEDIA TABLE
         $database->database_query("\r\n        INSERT INTO se_groupmedia (\r\n          groupmedia_groupalbum_id,\r\n          groupmedia_user_id,\r\n          groupmedia_date\r\n        ) VALUES (\r\n          '{$groupalbum_id}',\r\n          '{$user->user_info['user_id']}',\r\n          '" . time() . "'\r\n        )\r\n      ");
         $groupmedia_id = $database->database_insert_id();
         // CHECK IF IMAGE RESIZING IS AVAILABLE, OTHERWISE MOVE UPLOADED IMAGE
         if ($new_media->is_image == 1) {
             $file_dest = $this->group_dir($this->group_info['group_id']) . $groupmedia_id . ".jpg";
             $thumb_dest = $this->group_dir($this->group_info['group_id']) . $groupmedia_id . "_thumb.jpg";
             // UPLOAD THUMB
             $new_media->upload_thumb($thumb_dest, 200);
             // UPLOAD FILE
             $new_media->upload_photo($file_dest);
             $file_ext = "jpg";
             $file_filesize = filesize($file_dest);
         } else {
             $file_dest = $this->group_dir($this->group_info['group_id']) . $groupmedia_id . "." . $new_media->file_ext;
             $thumb_dest = $this->group_dir($this->group_info['group_id']) . $groupmedia_id . "_thumb.jpg";
             // UPLOAD THUMB IF NECESSARY
             if ($new_media->file_ext == 'gif') {
                 $thumb_dest = $this->group_dir($this->group_info['group_id']) . $groupmedia_id . "_thumb.jpg";
                 $new_media->upload_thumb($thumb_dest, 200);
             }
             $new_media->upload_file($file_dest);
             $file_ext = $new_media->file_ext;
             $file_filesize = filesize($file_dest);
         }
         // CHECK SPACE LEFT
         if ($file_filesize > $space_left) {
             $new_media->is_error = 2000250;
         } else {
             $space_left = $space_left - $file_filesize;
         }
         // DELETE FROM DATABASE IF ERROR
         if ($new_media->is_error) {
             $database->database_query("DELETE FROM se_groupmedia WHERE groupmedia_id='{$groupmedia_id}' AND groupmedia_groupalbum_id='{$groupalbum_id}'");
             @unlink($file_dest);
         } else {
             $sql = "UPDATE se_groupmedia SET groupmedia_ext='{$file_ext}', groupmedia_filesize='{$file_filesize}' WHERE groupmedia_id='{$groupmedia_id}' AND groupmedia_groupalbum_id='{$groupalbum_id}'";
             $resource = $database->database_query($sql);
             // UPDATE PARENT TABLE ROW
             if (!is_numeric($file_filesize)) {
                 $file_filesize = 0;
             }
             $sql = "UPDATE se_groupalbums SET groupalbum_totalfiles=groupalbum_totalfiles+1, groupalbum_totalspace=groupalbum_totalspace+'{$file_filesize}' WHERE groupalbum_id='{$groupalbum_id}' LIMIT 1";
             $resource = $database->database_query($sql);
         }
     }
     // RETURN FILE STATS
     $file_result = array('is_error' => $new_media->is_error, 'file_name' => $_FILES[$file_name]['name'], 'groupmedia_id' => $groupmedia_id, 'groupmedia_ext' => $file_ext, 'groupmedia_filesize' => $file_filesize);
     return $file_result;
 }