aboutsummaryrefslogtreecommitdiff
path: root/lib/exif.php
diff options
context:
space:
mode:
authorCash Costello <cash.costello@gmail.com>2009-06-21 12:41:09 +0000
committerCash Costello <cash.costello@gmail.com>2009-06-21 12:41:09 +0000
commitbda141ad119b7d382a8689182edd80aa603c2442 (patch)
treec2551dfa036df3fa8d8a1b2c55c3e82a1c024e96 /lib/exif.php
parent1cab81b9b45adc28342078cea97e715e399b0f05 (diff)
downloadelgg-bda141ad119b7d382a8689182edd80aa603c2442.tar.gz
elgg-bda141ad119b7d382a8689182edd80aa603c2442.tar.bz2
improved exif code
Diffstat (limited to 'lib/exif.php')
-rw-r--r--lib/exif.php104
1 files changed, 47 insertions, 57 deletions
diff --git a/lib/exif.php b/lib/exif.php
index 5382fbc9f..9d5ae6343 100644
--- a/lib/exif.php
+++ b/lib/exif.php
@@ -14,72 +14,62 @@ function td_get_exif($file) {
function tp_exif_formatted($file_guid) {
$metadata_exif = get_metadata_byname($file_guid, "tp_exif");
- if(!$metadata_exif) { //try to load it from the file if its not in the database
+ if (!$metadata_exif) { //try to load it from the file if its not in the database
$file = new ElggFile($file_guid);
td_get_exif($file);
unset($file);
$metadata_exif = get_metadata_byname($file_guid, "tp_exif");
}
- if($metadata_exif) {
+ if (!$metadata_exif) {
+ return false;
+ }
+
+ $exif = unserialize($metadata_exif["value"]);
+
+ $model = $exif['Model'];
+ if(!$model) $model = "N/A";
+ $exif_data['Model'] = $model;
- $exif = unserialize($metadata_exif["value"]);
-
- //got the code snippet below from http://www.zenphoto.org/support/topic.php?id=17
- //convert the raw values to understandible values
- $Fnumber = explode("/", $exif['FNumber']);
-
- if ($Fnumber[1] != 0)
- $Fnumber = $Fnumber[0] / $Fnumber[1];
- else
- $Fnumber = 0;
-
- if(!$Fnumber) {
- $Fnumber = "N/A";
- } else {
- $Fnumber = "f/$Fnumber";
- }
-
- $Focal = explode("/", $exif['FocalLength']);
- if ($Focal[1] != 0)
- $Focal = $Focal[0] / $Focal[1];
- else
- $Focal = 0;
- if(!$Focal || round($Focal) == "0") $Focal = 0;
- if(round($Focal) == 0) {
- $Focal = "N/A";
- } else {
- $Focal = round($Focal) . "mm";
- }
+ $exposure = $exif['ExposureTime'];
+ if (!$exposure) $exposure = "N/A";
+ $exif_data['Shutter'] = $exposure;
- $model = $exif['Model'];
- if(!$model) $model = "N/A";
-
- $exposure = $exif['ExposureTime'];
- if(!$exposure) $exposure = "N/A";
-
- $iso = $exif['ISOSpeedRatings'];
- if(!$iso) $iso = "N/A";
-
- $captured = $exif['DateTime'];
- if(!$captured) $captured = "N/A";
-
- //prepare the text for return
-
- $exif_text = "Model: ".$model."<br>";
- $exif_text .= "Shutter: ".$exposure."<br>";
- $exif_text .= "Aperture: ".$Fnumber."<br>";
- $exif_text .= "ISO Speed: ".$iso."<br>";
- if(round($Focal) == 0) {
- $exif_text .= "Focal Length: N/A<br>";
- } else {
- $exif_text .= "Focal Length: " . round($Focal) . "mm<br />";
- }
- $exif_text .= "Captured: ". $captured;
-
- return $exif_text;
+ //got the code snippet below from http://www.zenphoto.org/support/topic.php?id=17
+ //convert the raw values to understandible values
+ $Fnumber = explode("/", $exif['FNumber']);
+ if ($Fnumber[1] != 0)
+ $Fnumber = $Fnumber[0] / $Fnumber[1];
+ else
+ $Fnumber = 0;
+ if (!$Fnumber) {
+ $Fnumber = "N/A";
} else {
- return false;
+ $Fnumber = "f/$Fnumber";
}
+ $exif_data['Aperture'] = $Fnumber;
+
+ $iso = $exif['ISOSpeedRatings'];
+ if (!$iso) $iso = "N/A";
+ $exif_data['ISO Speed'] = $iso;
+
+ $Focal = explode("/", $exif['FocalLength']);
+ if ($Focal[1] != 0)
+ $Focal = $Focal[0] / $Focal[1];
+ else
+ $Focal = 0;
+ if (!$Focal || round($Focal) == "0") $Focal = 0;
+ if (round($Focal) == 0) {
+ $Focal = "N/A";
+ } else {
+ $Focal = round($Focal) . "mm";
+ }
+ $exif_data['Focal Length'] = $Focal;
+
+ $captured = $exif['DateTime'];
+ if (!$captured) $captured = "N/A";
+ $exif_data['Captured'] = $captured;
+
+ return $exif_data;
}
?> \ No newline at end of file