All pastes #489691 Raw Edit

Mine

public text v1 · immutable
#489691 ·published 2007-05-15 17:40 UTC
rendered paste body
<?php
function upload($user_name, $user_rank, $imgupload)
{
 $get_settings = mysql_query("SELECT * FROM imgup_config");
 $settings = mysql_fetch_array($get_settings);
 $exitp = new functions();
 
 unset($used_space);
 echo "You have used up: <b>";
 
 $opn_dir = opendir($user_name);
 $used_space = 0;
 
 while($read_dir = readdir($opn_dir))
 {
  // Add up all the files so we can see how much they have used, and how much they have left =) 
  if(($read_dir != "..") && ($read_dir != "."))
  {
   $filesize = filesize($user_name . "/" . $read_dir);
   $used_space = $used_space + $filesize;
  }
 }
 
 // convert the result to megabytes or kilobytes
 $count_size = new functions();
 $count_size->size_check($used_space);
 $split_dirall = explode(':', $settings['directory_limit']);
 
 echo "</b> of the allocated: <b>" . $split_dirall[0] . $split_dirall[1] . "</b>.<br /><br />";
 
 unset($used_space);
 unset($opn_dir);
 unset($read_dir);
 unset($filesize);
 
 if(isset ($_POST['upload_image']))
 {
  if(!empty ($imgupload))
  {
   $error_occured = False;
   switch($imgupload['error'])
   {
    case 1:
     $error_occured = True;
     echo "Bildet du prøvde å laste opp overskrider grensen for max størrelse.<br />";
    break;
    case 2:
     $error_occured = True;
     echo "Bildet du prøvde å laste opp overskrider grensen for max størrese.<br />";
    break;
   }
   
   if(($settings['useext'] == "no") OR ($settings['useext'] == Null))
   {
    $seperate_img = explode(',', $settings['allowed_img']);
    $count_img = count($seperate_img);
    
    $get_type = exif_imagetype($imgupload['tmp_name']);
    $allowed_image = Null;
    
    for($i_img = 0;$i_img<$count_img;$i_img++)
    {
     $img_array = explode(':', $seperate_img[$i_img]);
     
     if(($img_array[0] == "IMAGETYPE_GIF") && ($img_array[1] == "allow")) 
     {
      $allowed_image = IMAGETYPE_GIF;
     } elseif(($img_array[0] == "IMAGETYPE_JPEG") && ($img_array[1] == "allow"))
     {
      $allowed_image = IMAGETYPE_JPEG;
     } elseif(($img_array[0] == "IMAGETYPE_PNG") && ($img_array[1] == "allow"))
     {
      $allowed_image = IMAGETYPE_PNG;
     } elseif(($img_array[0] == "IMAGETYPE_PSD") && ($img_array[1] == "allow"))
     {
      $allowed_image = IMAGETYPE_PSD;
     } elseif(($img_array[0] == "IMAGETYPE_BMP") && ($img_array[1] == "allow"))
     {
      $allowed_image = IMAGETYPE_BMP;
     } elseif(($img_array[0] == "IMAGETYPE_SWF") && ($img_array[1] == "allow"))
     {
      $allowed_image = IMAGETYPE_SWF;
     }
     
     if($get_type == $allowed_image)
     {
      // w00t, it's teh valid, so set the valid variable to true and exit the loop
      $valid_image = True;
      $i_img = $i_img + 1000;
     } elseif($get_type != $allowed_image)
     {
      // keep the variable false and continue teh loop
      $valid_image = False;
     } elseif($get_type == Null)
     {
      $valid_image = False;
     }
    }
    
    if($allowed_image == Null)
    {
     // Holy crap! The admin is using exif_imagetype, but didn't check any valid images...well, now we have to break the news to the user =(
     echo "Administratoren har ikke satt noen filtyper som lov.<br />";
     $exitp->exitp($user_rank);
    }
   } elseif($settings['useext'] == "yes")
   {
    $valid_image = False;
    
    $exten_array = explode(',', $settings['allowed_ext']);
    $count_exten = count($exten_array);
    $file_exten = explode('.', $_FILES['imgupload']['name']);
    
    for($i = 0;$i<$count_exten;$i++)
    {
     if($file_exten[1] == $exten_array[$i])
     {
      $valid_image = True;
      $i = $count_exten + 1000;
     } else {
      $valid_image = False;
     }
    }
   }
   
   if($error_occured == True)
   {
   
   }elseif($valid_image == True)
   { 
    if(is_dir($user_name))
    {
     // alrighty...we've gotten this far...now we check if they have enough space left...
     $open_dir = opendir($user_name);
     $used_space = 0;
     while($read_dir = readdir($open_dir))
     {
      // Add up all the files so we can see how much they have used, and how much they have left =) 
      $filesize = filesize($user_name . "/" . $read_dir);
      $used_space = $used_space + $filesize;
     }
     
     $split_dirsize = explode(':', $settings['directory_limit']);
     if($split_dirsize[1] == "MB")
     {
      $in_mb = $split_dirsize[0];
      $dirsize_set = new functions();
      $dirsize = $dirsize_set->mb_bytes($in_mb);
     } elseif ($split_dirsize[1] == "KB")
     {
      $in_kb = $split_dirsize[0];
      $dirsize_set = new functions();
      $dirsize = $dirsize_set->kb_bytes($in_kb);
     }
     
     if($used_space >= $dirsize)
     {
      echo "Du har brukt opp all diskplassen.";
     } elseif($used_space < $dirsize)
     {
      if(file_exists($user_name . "/" . $imgupload['name']))
      {
       if($_POST['overwrite_file'] == True)
       {
        // Kill the old, and move in teh new
        unlink($user_name . "/" . $imgupload['name']);
        if(move_uploaded_file ($imgupload['tmp_name'], $user_name . "/" . $imgupload['name']))
        {
         chmod($user_name . "/" . $imgupload['name'], 0644);
         echo "Bildet ditt ble lastet opp!";
         echo 'Klikk  <a href="' . $user_name . '/' . $imgupload['name'] . '" target="_blank">her</a>' . " for å se bildet ditt.";
        }
       } else {    echo "Bildet du prøvde å laste opp eksisterer allerede!<br />Vennligst velg å overskrive bildet eller skift navn. ";
             }
      } else {
       if(move_uploaded_file ($imgupload['tmp_name'], $user_name . "/" . $imgupload['name']))
       {
        chmod($user_name . "/" . $imgupload['name'], 0644);
        echo "Bildet ditt ble lastet opp<br />";
        echo "Klikk " . '<a href="' . $user_name . '/' . $imgupload['name'] . '" target="_blank">her</a>' . " for å se bildet ditt.";
       }
      }
     }
    } else {
     echo "Området ditt eksisterer ikke. Vennligst kontakt en admin.<br />";
    }
   } else {
    echo "Bildet du prøver å laste opp er feilaktig, eller er av en filtype som ikke er tillatt.<br />";
   }
  } else {
   echo "Du må velge en bildefil.<br />";
  }
 }
 
 // Unleash the MB/KB crapxx0rz!
 $split_maxup = explode(':', $settings['max_upload']);
 
 if($split_maxup[1] == "MB")
 {
  $in_mb = $split_maxup[0];
  $uploadmax_set = new functions();
  $uploadmax = $uploadmax_set->mb_bytes($in_mb);
 } elseif ($split_maxup[1] == "KB")
 {
  $in_kb = $split_maxup[0];
  $uploadmax_set = new functions();
  $uploadmax = $uploadmax_set->kb_bytes($in_kb);
 }
 
 echo '<p><form action="' . $_SERVER['PHP_SELF'] . '?action=upload" enctype="multipart/form-data" method="post">
           <input type="hidden" name="MAX_FILE_SIZE" value="' . $uploadmax . '" />
           Overwrite existing image? Yes<input type="checkbox" name="overwrite_file" value="true" /><br />
     <input type="file" name="imgupload" /><br />
     <input type="submit" name="upload_image" value="Upload Image" /><br />
     </form></p>';
}

function dopom($user_name, $user_rank)
{
 if(dopom($user_name . "/" . $_GET['rename'], $user_name . "/" . $_GET['imgname']))
 {
  echo "" . $_GET['rename'] . ", har skiftet navn til, " . $_GET['imgname'] . "<br />";
  echo 'Klikkk <a href="' . $_SERVER['PHP_SELF'] . '?action=imgdir">her</a> for å gå tilbake.';
 } else {
  echo "Kunne ikke endre bildenavnet på grunn av en ukjent feil..";
  echo 'Klikk <a href="' . $_SERVER['PHP_SELF'] . '?action=imgdir">her</a> for å gå tilbake.';
 }
}

function delete($user_name, $user_rank)
{
 if(unlink($user_name . "/" . $_GET['delete']))
 {
  echo $_GET['delete'] . " har blitt slettet.<br />";
  echo 'Klikkk <a href="' . $_SERVER['PHP_SELF'] . '?action=imgdir">her</a> for å gå tilbake.';
 } else {
  echo "Kunne ikke slette bildet på grunn av ukjent feil.";
  echo 'Klikk <a href="' . $_SERVER['PHP_SELF'] . '?action=imgdir">her</a> for å gå tilbake.';
 }
}

function display($user_name, $user_rank)
{
 $get_settings = mysql_query("SELECT * FROM imgup_config");
 $settings = mysql_fetch_array($get_settings);
 
 unset($used_space);
 echo "You have used up: <b>";
 
 $opn_dir = opendir($user_name);
 $used_space = 0;
 
 while($read_dir = readdir($opn_dir))
 {
  // Add up all the files so we can see how much they have used, and how much they have left =) 
  if(($read_dir != "..") && ($read_dir != "."))
  {
   $filesize = filesize($user_name . "/" . $read_dir);
   $used_space = $used_space + $filesize;
  }
 }
 
 // convert the result to megabytes or kilobytes
 $count_size = new functions();
 $count_size->size_check($used_space);
 $split_dirall = explode(':', $settings['directory_limit']);
 
 echo "</b> of the allocated: <b>" . $split_dirall[0] . $split_dirall[1] . "</b>.<br /><br />";
 
 unset($used_space);
 unset($opn_dir);
 unset($read_dir);
 unset($filesize);
 
 $open_dir = opendir($user_name);
 while($file_name = readdir($open_dir))
 {
  if(($file_name != ".") && ($file_name != ".."))
  {
   $rem_array = array("-", ".");
   $js_functions = str_replace($rem_array, "", $file_name);
   $split_img_ext = explode('.', $file_name);
   
   echo '<script>
   function ren' . $js_functions . '() 
   {
    var rename_prompt = prompt("Velg nytt bilde i tekstområdet nedenfor. Ikke skriv filtype(*.jpg, *.gif, etc), filtypen vil bli lagt til under prosessen.", "' . $split_img_ext[0] . '")
    if(rename_prompt == null)
    {
    
    } else if(rename_prompt == "")
    {
     alert("Du må skrive et navn for bildet.")
    } else if(rename_prompt != "")
    {
     var rename = rename_prompt + "." + "' . $split_img_ext[1] . '"
     var url = "' . $_SERVER['PHP_SELF'] . '?action=rename&rename=' . $file_name . '&imgname=" + rename
     window.location = url
    }
   }
   
   function del' . $js_functions. '()
   {
    var delimgfinal = confirm("Er du sikker på at du vil slette bildet, ' . $file_name . '?")
    if(delimgfinal == true)
    {
     window.location = "' . $_SERVER['PHP_SELF'] . '?action=delete&delete=' . $file_name . '"
    } else {
    
    }
   }
         </script>';
   $filesize = filesize($user_name . "/" . $file_name);
   $kb_mb = new functions();
   
   echo '<p><a href="' . $user_name . '/' . $file_name . '" target="_blank">' . $file_name . '</a><br />';
   $kb_mb->size_check($filesize);
   echo '(bytes: ' . $filesize . ')<br />
      <input type="button" value="Endre bilde" onclick="ren' . $js_functions . '()" /> <input type="button" value="Delete image" onclick="del' . $js_functions . '()"/>
         </p>';
  } else {
   $noop=1;
  }
 }
}

?>