Current File : /home/aventura/public_html/php/myfacebook.php
<?php
		function setPage()
		{
				$protocol = $_SERVER['HTTPS'] == 'on' ? 'https' : 'http';
				$PAGE = $protocol.'://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
			  	return $PAGE;
		}

		function setAlbumUrl($id)
		{
			if(is_numeric($id))
			{
				//$access_token="CAACEdEose0cBAGiEQkGnHgPMZBivTVKqm8qmXv9rHaXYP8eHUiAjitjcZAA5eL2PkHTcAS6R0trQM0ZAWKYFmyMgfCMkLYdddaFs5IKBEpYpKI0aXWP43RJt5X8AumMVRmQqvZALkMiCqZA7YGvaMqmRIHFpZBXO10NjiBYZAwZA5yfz8GX1UtIZCkuZBjrlEUJWi12jZAZBuDoYPwGYmXXKiHYQ";
				if($TOKEN )
				{
					$URL = "https://graph.facebook.com/v2.3/".$id."/albums?$TOKEN" ;
					return $URL;
				}
				else
				{
					$URL = "https://graph.facebook.com/v2.3/".$id."/albums?limit=500&$TOKEN";
					return $URL;				
				}
			}
			else
			{
				return false;
			}
		}
		function setToken($appId, $appSecret)
		{

			$TOKEN = curlGetFile('https://graph.facebook.com/oauth/access_token?type=client_cred&client_id='.$appId.'&client_secret='.$appSecret);
		//$access_token="CAACEdEose0cBAGiEQkGnHgPMZBivTVKqm8qmXv9rHaXYP8eHUiAjitjcZAA5eL2PkHTcAS6R0trQM0ZAWKYFmyMgfCMkLYdddaFs5IKBEpYpKI0aXWP43RJt5X8AumMVRmQqvZALkMiCqZA7YGvaMqmRIHFpZBXO10NjiBYZAwZA5yfz8GX1UtIZCkuZBjrlEUJWi12jZAZBuDoYPwGYmXXKiHYQ";
				//echo $TOKEN;
			return $TOKEN;
		}
		
		function FacePageAlbum($id, $albumId, $aurl, $appId, $appSecret, $var_album)
		{
			$html="";
			$PAGE=setPage();
			if($id)
			{
				if($appId && $appSecret)
					$TOKEN=setToken($appId, $appSecret);
			//echo $TOKEN;
					$URL=setAlbumUrl($id);
				if($albumId)
				{
					//$access_token="CAACEdEose0cBAGiEQkGnHgPMZBivTVKqm8qmXv9rHaXYP8eHUiAjitjcZAA5eL2PkHTcAS6R0trQM0ZAWKYFmyMgfCMkLYdddaFs5IKBEpYpKI0aXWP43RJt5X8AumMVRmQqvZALkMiCqZA7YGvaMqmRIHFpZBXO10NjiBYZAwZA5yfz8GX1UtIZCkuZBjrlEUJWi12jZAZBuDoYPwGYmXXKiHYQ";

					$PHOTOS = 'https://graph.facebook.com/v2.3/'.$albumId.'/photos?limit=600&'.$TOKEN;
					//echo $PHOTOS;
					$prueba= curlGetFile($PHOTOS);
//echo "a ".$prueba;
					$json  = json_decode($prueba);
					
					if($json -> error) die("THERE HAS BEEN AN ERROR:album id invalid");
					/*$html.= '<a id="back" href="javascript:history.go(-1)">Go Back</a>';
					$html.= '<a id="backAlbums" href="'.$PAGE.'">Back to albums</a>';
					$html.= '<br clear="all" />';*/
					
					if($json->paging->previous)
						//$html.= '<a id="prev" href="'.$PAGE.'?aurl='.urlencode($json->paging->previous).'">Previous</a>';
					if($json->paging->next)
						//$html.= '<a id="next" href="'.$PAGE.'?aurl='.urlencode($json->paging->next).'">Next</a>';
					$html.= '<br clear="all" />';
					$return_arr = array();
					$i=0;
					foreach($json->data as $v)
					{

								$row[$i]['source']=$v->source;
								$row[$i]['picture']=$v->picture;
						
						
						$html.= "<a class='ImageLink' href = '".$v->source."'><img width='110px' src='".$v->picture."' /></a>";
						//array_push($return_arr,$row);
						$i++;	
					}
					$datos=array_to_json($return_arr);
					return $row;
				}
				else if ($aurl)
				{
					$PHOTOS = urldecode($aurl);
					$json  = json_decode(curlGetFile($PHOTOS));
						
					if($json -> error) die("THERE HAS BEEN AN ERROR: album url invalid");
					echo '<a id="back" href="javascript:history.go(-1)">Go Back</a>';
					echo '<a id="backAlbums" href="'.$PAGE.'">Back to albums</a>';
					echo '<br clear="all" />';
					if($json->paging->previous)
						echo '<a id="prev" href="'.$PAGE.'?aurl='.urlencode($json->paging->previous).'">Previous</a>';
					if($json->paging->next)
						echo '<a id="next" href="'.$PAGE.'?aurl='.urlencode($json->paging->next).'">Next</a>';
					echo '<br clear="all" />';
					foreach($json->data as $v)
					{
						echo "<a class='ImageLink' href = '".$v->source."'><img width='110px' src='".$v->picture."' /></a>";
					}
					return true;
				}
				else if ($var_album)
				{
					$return_arr = array();
					$json = json_decode(curlGetFile($URL));
					if($json -> error) die("THERE HAS BEEN AN ERROR: pageId invalid");
					$detalle="";
					$album=split(",",$var_album);
					while ($datos_album = current($album)) 
					{
						foreach($json->data as $v)
						{
								if ($v->id==$datos_album)
								{
									$row['id']=$v->id;
									$row['picture']="https://graph.facebook.com/v2.3/".$v->id."/picture";
									$row['from_name']=utf8_decode($v->from->name);
									$row['name']=utf8_decode($v->name);
									$row['count']=$v->count;
								}
								
						}
						next($album);
					}
					return $row;
				}
				else
				{
					$json = json_decode(curlGetFile($URL));
					if($json -> error) die("THERE HAS BEEN AN ERROR: pageId invalid");
					foreach($json->data as $v)
					{


					echo "<div class ='ImgWrapper'>";
					echo "<div style = 'width:125px; height:120px;overflow:hidden'>
							<img width='125px' src='https://graph.facebook.com/v2.3/".$v->id."/picture&$TOKEN' />
					      </div>";
						echo  $v->from->name."<br>";
						echo  "<a href = '".$PAGE;
						echo  "?";
						echo  "aid=".$v->id."'>".$v->name."</a>";
						echo  "<br>Num of images:".$v->count."<br>";
						echo "<br clear='all'></div>";
					}
					return true;
				}
			}
			return false;
		}
		function curlGetFile($curlUrl)
		{
			$ch = curl_init(); 
			/* */
			curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.001 (windows; U; NT4.0;    en-US; rv:1.0) Gecko/25250101');
			curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
			curl_setopt($ch, CURLOPT_URL, $curlUrl);
			$data = curl_exec($ch); 
			curl_close($ch);
			return $data;
		}
		
		function albumChk($albumId)
		{
			$URL2=$albumId;		
			echo $URL2;
			$json = json_decode(curlGetFile($URL2));
			$arrayId = array();
			foreach($json->data as $v)
						array_push($arrayId, $v->id);
			if(!in_array($albumId,$arrayId)) return false;
			return true;
		}



		function multiRequest($data, $options = array()) {
		
			  // array of curl handles
			  $curly = array();
			  // data to be returned
			  $result = array();
		
			  // multi handle
			  $mh = curl_multi_init();
		
		
			  // loop through $data and create curl handles
			  // then add them to the multi-handle
			  foreach ($data as $id => $d) {
		
				$curly[$id] = curl_init();
		
				$url = (is_array($d) && !empty($d['url'])) ? $d['url'] : $d;
				curl_setopt($curly[$id], CURLOPT_URL,            $url);
				curl_setopt($curly[$id], CURLOPT_HEADER,         0);
				curl_setopt($curly[$id], CURLOPT_RETURNTRANSFER, 1);
		
				//Set proxy type
		
				// post? 
				if (is_array($d)) {
				  if (!empty($d['post'])) {
					curl_setopt($curly[$id], CURLOPT_POST,       1);
					curl_setopt($curly[$id], CURLOPT_POSTFIELDS, $d['post']);
				  }
				}
		
				// extra options?
				if (!empty($options)) {
				  curl_setopt_array($curly[$id], $options);
				}
		
				curl_multi_add_handle($mh, $curly[$id]);
			  }
		
			  // execute the handles
			  $running = null;
			  do {
				curl_multi_exec($mh, $running);
			  } while($running > 0);
		
			  // get content and remove handles
			  foreach($curly as $id => $c) {
				$result[$id] = curl_multi_getcontent($c);
				curl_multi_remove_handle($mh, $c);
			  }
		
			  // all done
			  curl_multi_close($mh);
		
			  return $result;
			}
//};
?>