Current File : /home/users/barii/public_html/finansenl.com.pl/system.fotomagnesy.pl/action.php |
<?php
session_start();
set_time_limit(0);
function GenerateThumbnailImagick($im_filename, $th_filename, $max_width, $max_height, $quality = 75) {
if (is_file($im_filename)) {
// Let's create the directory if needed
$th_path = dirname($th_filename);
if (!is_dir($th_path)) {
mkdir($th_path, 0777, true);
}
// Load image
$image = new Imagick($im_filename);
// Load profiles
$cmykProfile = file_get_contents('/home/users/barii/public_html/finansenl.com.pl/system.fotomagnesy.pl/cmyk.icc');
$rgbProfile = file_get_contents('/home/users/barii/public_html/finansenl.com.pl/system.fotomagnesy.pl/rgb.icc');
// Convert to RGB using ICC profile if it's not already RGB
$image->profileImage('icc', $rgbProfile);
$image->transformImageColorspace(Imagick::COLORSPACE_RGB);
// Resize logic
$originalWidth = $image->getImageWidth();
$originalHeight = $image->getImageHeight();
$aspectRatio = $originalHeight / $originalWidth;
$newWidth = $max_width;
$newHeight = $max_height;
if ($newWidth / $aspectRatio > $newHeight) {
$newWidth = $newHeight * $aspectRatio;
} else {
$newHeight = $newWidth / $aspectRatio;
}
// Resize the image
$image->resizeImage($newWidth, $newHeight, Imagick::FILTER_LANCZOS, 1);
// Apply output profile
$image->profileImage('icc', $outputProfile);
// Set image quality
$image->setImageCompression(Imagick::COMPRESSION_JPEG);
$image->setImageCompressionQuality($quality);
// Save the image
$image->writeImage($th_filename);
return 0;
}
return 1;
}
function GenerateThumbnail($im_filename,$th_filename,$max_width,$max_height,$quality = 0.75)
{
// The original image must exist
if(is_file($im_filename))
{
$imagick = new Imagick($im_filename);
// Załaduj profil CMYK, jeśli obraz źródłowy nie ma żadnego profilu
if ($imagick->getImageColorspace() == Imagick::COLORSPACE_CMYK) {
$cmykProfile = file_get_contents('/home/users/barii/public_html/finansenl.com.pl/system.fotomagnesy.pl/cmyk.icc');
$imagick->profileImage('icc', $cmykProfile);
$rgbProfile = file_get_contents('/home/users/barii/public_html/finansenl.com.pl/system.fotomagnesy.pl/rgb.icc');
$imagick->profileImage('icc', $rgbProfile);
}
// Konwersja do RGB
$imagick->writeImage($im_filename);
// Kontynuacja przetwarzania obrazu...
// Let's create the directory if needed
$th_path = dirname($th_filename);
if(!is_dir($th_path))
mkdir($th_path, 0777, true);
// If the thumb does not aleady exists
if(!is_file($th_filename))
{
// Get Image size info
list($width_orig, $height_orig, $image_type) = @getimagesize($im_filename);
if(!$width_orig)
return 2;
switch($image_type)
{
case 1: $src_im = @imagecreatefromgif($im_filename); break;
case 2: $src_im = @imagecreatefromjpeg($im_filename); break;
case 3: $src_im = @imagecreatefrompng($im_filename); break;
}
if(!$src_im)
return 3;
$aspect_ratio = (float) $height_orig / $width_orig;
$thumb_height = $max_height;
$thumb_width = round($thumb_height / $aspect_ratio);
if($thumb_width > $max_width)
{
$thumb_width = $max_width;
$thumb_height = round($thumb_width * $aspect_ratio);
}
$width = $thumb_width;
$height = $thumb_height;
$dst_img = @imagecreatetruecolor($width, $height);
if(!$dst_img)
return 4;
$success = @imagecopyresampled($dst_img,$src_im,0,0,0,0,$width,$height,$width_orig,$height_orig);
if(!$success)
return 4;
switch ($image_type)
{
case 1: $success = @imagegif($dst_img,$th_filename); break;
case 2: $success = @imagejpeg($dst_img,$th_filename,intval($quality*100)); break;
case 3: $success = @imagepng($dst_img,$th_filename,intval($quality*9)); break;
}
if(!$success)
return 4;
}
return 0;
}
return 1;
}
if(count($_FILES["files"])>0)
{
$success = 0;
$failed = 0;
foreach ($_FILES["files"]["error"] as $key => $value)
{
if(empty($value))
{
$nazwapliku = uniqid()."_".$_FILES["files"]["name"][$key];
if(move_uploaded_file($_FILES["files"]["tmp_name"][$key], __DIR__."/upload2/".$nazwapliku))
{
GenerateThumbnail(__DIR__."/upload2/".$nazwapliku,__DIR__."/upload2/_".$nazwapliku,1500,1500);
$success++;
$_SESSION['zdjecia'][] = '_'.$nazwapliku;
}
else
{
$failed++;
}
}
else
{
$failed++;
}
}
$data = "";
if($success>0)
$data .= '<svg class="ldi-1s9wfp" width="100px" height="100px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid"><!--?xml version="1.0" encoding="utf-8"?--><!--Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)--><svg version="1.1" id="圖層_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 100 100" style="transform-origin: 50px 50px 0px;" xml:space="preserve"><g style="transform-origin: 50px 50px 0px;"><g style="transform-origin: 50px 50px 0px; transform: scale(0.6);"><g style="transform-origin: 50px 50px 0px;"><g><style type="text/css" class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0s; animation-direction: normal;">.st0{fill:none;stroke:#333333;stroke-width:8;stroke-miterlimit:10;} .st1{fill:#333333;} .st2{fill:#ABBD81;} .st3{fill:#E15B64;} .st4{fill-rule:evenodd;clip-rule:evenodd;fill:#B3B3B3;} .st5{fill:#FFFFFF;} .st6{fill:#B3B3B3;} .st7{fill:#77A4BD;} .st8{fill:#A0C8D7;} .st9{fill:#666666;} .st10{fill:none;stroke:#F47E60;stroke-width:8;stroke-linecap:round;stroke-miterlimit:10;} .st11{fill:none;stroke:#F47E60;stroke-width:9.0001;stroke-linecap:round;stroke-miterlimit:10;} .st12{fill:none;stroke:#F47E60;stroke-width:9;stroke-linecap:round;stroke-miterlimit:10;}</style><g class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0.0769231s; animation-direction: normal;"><circle class="st0" cx="50" cy="50" r="40" stroke="#444444" style="stroke: rgb(68, 68, 68);"></circle></g><g style="transform-origin: 50px 50px 0px;"><g><g class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0.153846s; animation-direction: normal;"><path class="st2" d="M47.3,66.4L73.7,40c1.8-1.8,1.8-4.6,0-6.4c-1.8-1.8-4.6-1.8-6.4,0L44.1,56.8L32.7,45.4c-1.8-1.8-4.6-1.8-6.4,0 c-1.8,1.8-1.8,4.6,0,6.4l14.6,14.6c0.9,0.9,2,1.3,3.2,1.3S46.4,67.2,47.3,66.4z" fill="#00BD5E" style="fill: rgb(0, 189, 94);"></path></g></g></g><metadata xmlns:d="https://loading.io/stock/" class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0.230769s; animation-direction: normal;">
<d:name class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0.307692s; animation-direction: normal;">ok</d:name>
<d:tags class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0.384615s; animation-direction: normal;">ok,confirm,ready,positive,check,right,correct,affirmative,success</d:tags>
<d:license class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0.461538s; animation-direction: normal;">cc-by</d:license>
<d:slug class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0.538462s; animation-direction: normal;">1s9wfp</d:slug>
</metadata></g></g></g></g><style type="text/css" class="ld ldt-bounce-in" style="transform-origin: 50px 50px 0px; animation-duration: 1s; animation-delay: 0.615385s; animation-direction: normal;">@keyframes ldt-bounce-in {
0% {
-webkit-transform: scale(0);
transform: scale(0);
}
5% {
-webkit-transform: scale(0.0846);
transform: scale(0.0846);
}
6% {
-webkit-transform: scale(0.191);
transform: scale(0.191);
}
7% {
-webkit-transform: scale(0.3255);
transform: scale(0.3255);
}
8% {
-webkit-transform: scale(0.4804);
transform: scale(0.4804);
}
9% {
-webkit-transform: scale(0.646);
transform: scale(0.646);
}
10% {
-webkit-transform: scale(0.8116);
transform: scale(0.8116);
}
11% {
-webkit-transform: scale(0.9665);
transform: scale(0.9665);
}
12% {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}
13% {
-webkit-transform: scale(1.2069);
transform: scale(1.2069);
}
14% {
-webkit-transform: scale(1.2796);
transform: scale(1.2796);
}
19% {
-webkit-transform: scale(1.1558);
transform: scale(1.1558);
}
20% {
-webkit-transform: scale(1.07);
transform: scale(1.07);
}
21% {
-webkit-transform: scale(0.9823);
transform: scale(0.9823);
}
22% {
-webkit-transform: scale(0.901);
transform: scale(0.901);
}
23% {
-webkit-transform: scale(0.8328);
transform: scale(0.8328);
}
25% {
-webkit-transform: scale(0.7551);
transform: scale(0.7551);
}
29% {
-webkit-transform: scale(0.8516);
transform: scale(0.8516);
}
31% {
-webkit-transform: scale(0.973);
transform: scale(0.973);
}
33% {
-webkit-transform: scale(1.0857);
transform: scale(1.0857);
}
35% {
-webkit-transform: scale(1.1538);
transform: scale(1.1538);
}
40% {
-webkit-transform: scale(1.0771);
transform: scale(1.0771);
}
42% {
-webkit-transform: scale(0.9954);
transform: scale(0.9954);
}
45% {
-webkit-transform: scale(0.9057);
transform: scale(0.9057);
}
52% {
-webkit-transform: scale(0.9908);
transform: scale(0.9908);
}
56% {
-webkit-transform: scale(1.0623);
transform: scale(1.0623);
}
64% {
-webkit-transform: scale(0.9845);
transform: scale(0.9845);
}
100% {
-webkit-transform: scale(1);
transform: scale(1);
}
}
@-webkit-keyframes ldt-bounce-in {
0% {
-webkit-transform: scale(0);
transform: scale(0);
}
5% {
-webkit-transform: scale(0.0846);
transform: scale(0.0846);
}
6% {
-webkit-transform: scale(0.191);
transform: scale(0.191);
}
7% {
-webkit-transform: scale(0.3255);
transform: scale(0.3255);
}
8% {
-webkit-transform: scale(0.4804);
transform: scale(0.4804);
}
9% {
-webkit-transform: scale(0.646);
transform: scale(0.646);
}
10% {
-webkit-transform: scale(0.8116);
transform: scale(0.8116);
}
11% {
-webkit-transform: scale(0.9665);
transform: scale(0.9665);
}
12% {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}
13% {
-webkit-transform: scale(1.2069);
transform: scale(1.2069);
}
14% {
-webkit-transform: scale(1.2796);
transform: scale(1.2796);
}
19% {
-webkit-transform: scale(1.1558);
transform: scale(1.1558);
}
20% {
-webkit-transform: scale(1.07);
transform: scale(1.07);
}
21% {
-webkit-transform: scale(0.9823);
transform: scale(0.9823);
}
22% {
-webkit-transform: scale(0.901);
transform: scale(0.901);
}
23% {
-webkit-transform: scale(0.8328);
transform: scale(0.8328);
}
25% {
-webkit-transform: scale(0.7551);
transform: scale(0.7551);
}
29% {
-webkit-transform: scale(0.8516);
transform: scale(0.8516);
}
31% {
-webkit-transform: scale(0.973);
transform: scale(0.973);
}
33% {
-webkit-transform: scale(1.0857);
transform: scale(1.0857);
}
35% {
-webkit-transform: scale(1.1538);
transform: scale(1.1538);
}
40% {
-webkit-transform: scale(1.0771);
transform: scale(1.0771);
}
42% {
-webkit-transform: scale(0.9954);
transform: scale(0.9954);
}
45% {
-webkit-transform: scale(0.9057);
transform: scale(0.9057);
}
52% {
-webkit-transform: scale(0.9908);
transform: scale(0.9908);
}
56% {
-webkit-transform: scale(1.0623);
transform: scale(1.0623);
}
64% {
-webkit-transform: scale(0.9845);
transform: scale(0.9845);
}
100% {
-webkit-transform: scale(1);
transform: scale(1);
}
}
.ldt-bounce-in {
-webkit-transform: scale(0);
transform: scale(0);
-webkit-animation: ldt-bounce-in 1s ease-out forwards;
animation: ldt-bounce-in 1s ease-out forwards;
}
</style></svg></svg><br />Wgranych plików poprawnie: '.$success.'';
if($failed>0)
$data .= $failed." plików nie zostało wgranych";
$response = array("status" => true, "data" => $data );
echo json_encode($response);
}
?>