/
var
/
www
/
jobgoal
/
up file
home
<?php //error_reporting(E_ALL^E_DEPRECATED); //ini_set('display_errors', TRUE); //ini_set('display_startup_errors', TRUE); define('DB_HOST','localhost'); define('DB_USER','viktre'); define('DB_PASSWORD','g6yBhE1RC!9E'); define('DB_NAME','workscout'); class DBManager { var $serverName; var $userName; var $userPass; var $dbName; var $conn; var $numRows; public function __construct() { $this->serverName = DB_HOST; $this->userName = DB_USER; $this->userPass = DB_PASSWORD; $this->dbName = DB_NAME; } public function createConnection() { $this->conn = mysql_connect($this->serverName,$this->userName,$this->userPass); mysql_select_db($this->dbName,$this->conn); // $this->conn = mysql_connect($this->serverName,$this->userName,$this->userPass) or die(mysql_error()); // mysql_select_db($this->dbName,$this->conn) or die(mysql_error()); } function insertRecord($tblName , $fieldArray , $show = false){ if(is_array($fieldArray)) { $fieldNames = ""; $fieldValues = ""; foreach($fieldArray as $field=>$val) { if($fieldNames == "") { $fieldNames = $field; } else { $fieldNames .= ",".$field; } $val = str_replace("'","\'",$val); if($fieldValues == "") { $fieldValues = "'$val'"; } else { $fieldValues .= ","."'$val'"; } } $qry = "insert into $tblName ($fieldNames) values ($fieldValues)"; if($show) { echo "Query -- ".$qry; exit; } $this->exeQuery($qry); } } function exeQuery($qry) { $this->createConnection(); $exe = mysql_query($qry); //$exe = mysql_query($qry) or die(mysql_error()); if (!is_bool($exe)) { $this->numRows = mysql_num_rows($exe); } $this->closeConnection($this->conn); return $exe; } function closeConnection($var) { mysql_close($var); } } $objDBManager = new DBManager(); //initialize db connection $objDBManager->createConnection(); $logosArray = array("logo1.png", "logo2.png", "logo3.png", "logo4.png", "logo5.png"); $logoCounter = 0; $memcache_obj_elastic = memcache_connect("viktrememcache.ozwcsi.cfg.use1.cache.amazonaws.com", 11211); $userAgent='web'; $mobileAdStyle=''; function getLogoFromClearbitAndStore($company_name){ global $objDBManager; global $memcache_obj_elastic; $url="https://autocomplete.clearbit.com/v1/companies/suggest?query=".$company_name; $result = file_get_contents($url); $vars = json_decode($result, true); foreach ($vars as &$innerArray) { $logo = $innerArray['logo']; $name = $innerArray['name']; if (ctype_alnum($name) && ctype_alnum($company_name)){ $name = str_replace(" ","_",$name); $name = str_replace(".","_",$name); $name = str_replace("&","_",$name); $name = str_replace(",","_",$name); $name = str_replace("'","_",$name); $content = file_get_contents($logo); if($content!=false){ file_put_contents('../viktre_logos/company_logos/'.$name.'.png', $content); } memcache_set($memcache_obj_elastic, $name, $name.'.png', false, time()+86400); $insertRecords = array(); $insertRecords['company_name'] = $company_name; $insertRecords['company_key'] = $name; $insertRecords['image_name'] = $name.'.png'; $objDBManager->insertRecord('companies_logos',$insertRecords); } } $key = str_replace(" ","_",$company_name); $key = str_replace(".","_",$key); $key = str_replace("&","_",$key); $key = str_replace(",","_",$key); $value = memcache_get($memcache_obj_elastic, $key); if(empty($value)){ memcache_set($memcache_obj_elastic, $key, 'logo not found', false, time()+86400); $insertRecords = array(); $insertRecords['company_name'] = $company_name; $insertRecords['company_key'] = $key; $insertRecords['image_name'] = 'logo not found'; $objDBManager->insertRecord('companies_logos',$insertRecords); } } function getLogoImageUrl($name) { global $memcache_obj_elastic; global $logoCounter; global $logosArray; $logoCounter = array_rand($logosArray); $key = str_replace(array(" ",".","&",",","'"),"_",$name); $value = memcache_get($memcache_obj_elastic, $key); if(empty($value)){ getLogoFromClearbitAndStore($name); } $value = memcache_get($memcache_obj_elastic, $key); if(empty($value) || $value == 'logo not found') { $logoUrl = ''; } else { $logoUrl = $value; } if($logoUrl != '') { $logoUrl = 'http://34.225.198.110/viktre_logos/company_logos/'.$logoUrl; $data = file_get_contents($logoUrl); if(empty($data)) { $logoUrl = 'http://34.225.198.110/viktre_logos_genric/'.$logosArray[$logoCounter]; } } else { $logoUrl = 'http://34.225.198.110/viktre_logos_genric/'.$logosArray[$logoCounter]; if($logoCounter>=4) $logoCounter = array_rand($logosArray); else $logoCounter = array_rand($logosArray); } return $logoUrl; } /*function myErrorHandler($errno, $errstr, $errfile, $errline) { return ($errno); } function fatalErrorShutdownHandler() { $last_error = error_get_last(); if ($last_error['type'] === E_ERROR) { // fatal error myErrorHandler(E_ERROR, $last_error['message'], $last_error['file'], $last_error['line']); } }*/ //set_error_handler("myErrorHandler"); //register_shutdown_function('fatalErrorShutdownHandler'); try { $name = $_GET['name']; $name_arr = array(); $name_arr[$name]=getLogoImageUrl($name); echo json_encode($name_arr); }catch (Exception $e) { var_dump($e); //echo json_encode(array()); } ?>