| <?php |
| /******************************************************************************* |
| * Copyright (c) 2010 Eclipse Foundation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * Denis Roy (Eclipse Foundation)- initial API and implementation |
| * Nathan Gervais (Eclipse Foundation) - Expanded new fields being added |
| *******************************************************************************/ |
| |
| require_once(realpath(dirname(__FILE__) . "/../../system/app.class.php")); |
| |
| class MemberImage { |
| |
| #***************************************************************************** |
| # |
| # membershipimage.class.php |
| # |
| # Author: M. Ward |
| # Date: 06/01/10 |
| # Based on work by: Denis Roy 2005-10-25 |
| # |
| # Description: functions around membership image details |
| # |
| # HISTORY: |
| # |
| #***************************************************************************** |
| |
| var $DEBUG; |
| var $details = array(); |
| |
| |
| # default constructor |
| function MemberImage() { |
| $this->DEBUG = 0; |
| $this->details[0] = -1; |
| $this->details[1] = -1; |
| } |
| |
| function getsmall_image($member_id) { |
| |
| if ($this->getMetaImage($member_id,"small") == -1 ) { |
| if ($this->DEBUG) {echo "Error retrieving image details for member $_member_id.";} |
| } |
| return $this->details; |
| } |
| |
| function getlarge_image($member_id) { |
| |
| if ($this->getMetaImage($member_id,"large") == -1 ) { |
| if ($this->DEBUG){echo "Error retrieving image details for member $_member_id.";} |
| } |
| return $this->details; |
| |
| } |
| |
| function setdebug($val){ |
| $this->DEBUG = $val; |
| } |
| |
| |
| private function getMetaImage($_member_id, $_size) { |
| |
| if ( $_member_id <= 0 || !is_numeric($_member_id)){return -1;} |
| |
| |
| $image = ""; |
| |
| $App = new App(); |
| |
| $sql = "SELECT ".$_size."_height as height, ".$_size."_width as width , ".$_size."_logo as image from OrganizationInformation where OrganizationID = ".$_member_id." LIMIT 1"; |
| $sql = $App->sqlSanitize($sql); |
| $result = $App->eclipse_sql($sql); |
| while($myrow = mysql_fetch_array($result)) |
| { |
| $this->details[0]=$myrow["width"]; |
| $this->details[1]=$myrow["height"]; |
| $image=$myrow["image"]; |
| } |
| if ($this->details[0] == 0 && $this->details[1] == 0 ) { |
| if ( $image != "" ) { |
| $img = imagecreatefromstring($image); |
| $this->details[1] = imagesy($img); |
| $this->details[0] = imagesx($img); |
| imagedestroy($img); |
| if ( $this->details[0] == 0 && $this->details[1] == 0 ) { |
| //try and get the data the old fashined way |
| $image_url = 'http://eclipse.org/membership/scripts/get_image.php?size=small&id='; |
| list ($this->details[0], $this->details[1], $type, $attr) = getimagesize($image_url . $array['memberID']); |
| } |
| } |
| if ( $this->details[1] == 0 && $this->details[0] == 0 ) { //error! |
| return -1; |
| } |
| $sql = "UPDATE OrganizationInformation SET ".$_size."_height = ".$this->details[1].",".$_size."_width = ".$this->details[0]." where OrganizationID = ".$_member_id; |
| //insert data |
| $sql = $App->sqlSanitize($sql); |
| $result = $App->eclipse_sql($sql); |
| } |
| return 1; |
| } |
| |
| } |
| ?> |