getRequest(); $theme = Zend_Registry::get('theme'); //Get standard parameters $this->siret = $request->getParam('siret'); $this->id = $request->getParam('id', 0); require_once 'Scores/WsScores.php'; require_once 'Scores/SessionEntreprise.php'; require_once 'Scores/IdentiteEntreprise.php'; require_once 'common/dates.php'; } public function preDispatch() { switch($this->getRequest()->getActionName()) { case 'fiche': case 'fichepc': if (intval($this->siret)==0 && $this->id==0){ $this->_forward('params', 'error'); } break; } } /** * Renvoi vers la fiche */ public function indexAction() { $this->_forward('index', 'index'); } /** * Affichage de la fiche identité */ public function ficheAction() { //Modification du titre if( empty($this->siret) ){ $titre = 'Identifiant '.$this->id; } else { $titre = 'Siret '.$this->siret; } $this->view->headTitle()->append('Identité - '.$titre); $user = new Scores_Utilisateur(); $autrePage = $this->getRequest()->getParam('apage'); //Récupération des informations if (empty($autrePage)) { $ws = new WsScores(); $infos = $ws->getIdentite($this->siret, $this->id); if ($infos === false) { $this->_forward('soap', 'error'); } } else { $infos = $this->getRequest()->getParam('infos'); } if (is_string($infos)) { $this->view->assign('message', $infos); } else { //Mise en session $session = new SessionEntreprise($this->siret, $this->id, true); $session->setInfoEntrep($infos); //Date de dernière mise à jour $tabDate = array( 'DateMajINSEE' => "Insee : ", 'DateMajRCS' => "RCS : ", 'DateMajBILAN' => "Bilans : ", 'DateMajANN' => "Annonces : ", 'DateMajID' => 'Scores :' ); $datemajTexte = $dateDerMaj = ''; $datemajTexte.= ''; foreach ( $tabDate as $dateId => $dateLib ) { if ( isset($infos->{$dateId}) && !empty($infos->{$dateId}) && $infos->{$dateId}!='0000-00-00') { if ( $dateId == 'DateMajID') { $dateDerMaj = ' le '.WDate::dateT('Y-m-d', 'd/m/Y', $infos->DateMajID); } if ( $dateId == 'DateMajID' && !$user->checkModeEdition()) { } else { $datemajTexte.= ''; $datemajTexte.= ''; $datemajTexte.= ''; $datemajTexte.= ''; } } } $datemajTexte.= '
'.$dateLib.''.WDate::dateT('Y-m-d', 'd/m/Y', $infos->{$dateId}).'
'; $identite = new IdentiteEntreprise($infos); //Définition des blocks $blocks = array( 'Siret', 'SiretSiege', 'TvaNumero', 'Isin', 'Capitalisation', 'NumRC', 'AutreId', 'Actif', 'SituationJuridique', 'AutreSiren', 'RaisonSociale', 'NomCommercial', 'EnseigneSigle', 'FormeJuridique', 'DateImmat', 'DateCreaEn', 'DateCreaEt', 'Adresse', 'Zones', 'Tel', 'Fax', 'Web', 'Mail', 'ActiviteEn', 'ActiviteEt', 'Naf4', 'Nace', 'NatureActivite', 'SurfaceMagasin', 'OrigineFond', 'TypeExploitation', 'Saisonnalite', 'NbEtabActif', 'Capital', 'ChiffreAffaire', 'Dirigeants', 'Effectif', 'EffectifEtab' ); $dBlock = $identite->formatBlock($blocks); require_once 'Scores/Logo.php'; $logo = new Logo($infos->Siren, $infos->Isin); $logoImg = array( 'label' => 'Logo', 'texte' => $logo->affiche(), ); $this->view->assign('exportObjet', $infos); $this->view->assign('dBlock', $dBlock); $this->view->assign('logo', $logoImg); $this->view->assign('dateDerMaj', $dateDerMaj); $this->view->assign('datemajTexte', $datemajTexte); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $this->view->assign('infos', $infos); $this->view->assign('siret', $infos->Siret); $survDroits = array('survannonce', 'survinsee', 'survbilan', 'survscore', 'survactes', 'survdirigeants', 'survpriv'); $countSurvDroits = 0; foreach ( $survDroits as $item ) { if ($user->checkPerm($item)) $countSurvDroits++; } $this->view->assign('surveillance', $countSurvDroits); } $this->view->assign('AutrePage', $this->getRequest()->getParam('apage')); } /** * Affichage de la fiche procédure collective */ public function fichepcAction() { //Vérification des permissions $user = new Scores_Utilisateur(); if(!$user->checkPerm('idprocol')){ $this->_forward('perms', 'error'); } $siren = substr($this->siret,0,9); //Modification du titre if(empty($this->siret)){ $titre = 'Identifiant '.$this->id; } else { $titre = 'Siret '.$this->siret; } $this->view->headTitle()->append('Fiche procédure collective - '.$titre); //Récupération des informations $ws = new WsScores(); $infos = $ws->getIdentiteProcol($this->siret, $this->id); if ($infos === false) $this->_forward('soap', 'error'); //Mise en session $session = new SessionEntreprise($this->siret, $this->id); $session->setInfoEntrep($infos->Identite); //Element Fiche identite $identite = new IdentiteEntreprise($infos->Identite); //Définition des blocks $blocks = array( 'Siret', 'SiretSiege', 'TvaNumero', 'Isin', 'Capitalisation', 'NumRC', 'AutreId', 'Actif', 'SituationJuridique', 'AutreSiren', 'RaisonSociale', 'EnseigneSigle', 'FormeJuridique', 'DateImmat', 'DateCreaEn', 'DateCreaEt', 'Adresse', 'Zones', 'Tel', 'Fax', 'Web', 'Mail', 'ActiviteEt', 'ActiviteEn', 'Naf4', 'Nace', 'NatureActivite', 'OrigineFond', 'TypeExploitation', 'Saisonnalite', 'NbEtabActif', 'Capital', 'ChiffreAffaire', 'Dirigeants', 'Effectif', 'EffectifEtab' ); $dBlock = array(); foreach ($blocks as $item) { $display = array( 'label' => method_exists($identite, 'get'.$item.'Label') ? $identite->{'get'.$item.'Label'}() : '', 'texte' => method_exists($identite, 'get'.$item.'Texte') ? $identite->{'get'.$item.'Texte'}() : '', 'titre' => method_exists($identite, 'get'.$item.'Titre') ? $identite->{'get'.$item.'Titre'}() : '', ); $dBlock[$item] = $display; } require_once 'Scores/Logo.php'; $logo = new Logo($infos->Siren, $infos->Isin); $logoImg = array( 'label' => 'Logo', 'texte' => $logo->affiche(), ); $Identite = new stdClass(); $Identite->siret = $this->siret; $Identite->dBlock = $dBlock; $Identite->logo = $logo; $Identite->AutrePage = 'fichepc'; $this->view->assign('Identite', $Identite); //Element Fiche procédure collective require_once 'Scores/IdentiteProcol.php'; $procol = new IdentiteProcol($infos); $blocks = array( 'CessionOffreDate', 'CessionInvenDate', 'CessionDesc', ); $dBlock = array(); foreach ($blocks as $item) { $display = array( 'label' => method_exists($procol, 'get'.$item.'Label') ? $procol->{'get'.$item.'Label'}() : '', 'texte' => method_exists($procol, 'get'.$item.'Texte') ? $procol->{'get'.$item.'Texte'}() : '', 'titre' => method_exists($procol, 'get'.$item.'Titre') ? $procol->{'get'.$item.'Titre'}() : '', ); $dBlock[$item] = $display; } $this->view->assign('dBlock', $dBlock); $this->view->assign('infosProcol', $procol); $this->view->assign('exportObjet', $infos); $this->view->assign('infos', $infos); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $this->view->assign('fj', $session->getFormeJuridique()); } /** * Affichage de la liste des établissements */ public function etablissementsAction() { $siren = substr($this->siret,0,9); $actif = $this->getRequest()->getParam('actif', -1); $this->view->headTitle()->append('Liste des établissements - Siren '.$siren); $session = new SessionEntreprise($this->siret, $this->id); $user = new Scores_Utilisateur(); $ws = new WsScores(); $infos = $ws->getListeEtablissements($siren, $actif); if ($infos === false) $this->_forward('soap', 'error'); $etabs = $infos->result->item; $this->view->assign('actif', $actif); $nbEtabActif = 0; $nbEtabRadie = 0; if (count($etabs)>0) { foreach ($etabs as $i => $etab) { if ($etab->Actif==1){ $nbEtabActif++; } else { $nbEtabRadie++; } } } $this->view->assign('nbEtabActif', $nbEtabActif); $this->view->assign('nbEtabRadie', $nbEtabRadie); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('id', $this->id); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $this->view->assign('etabs', $etabs); $this->view->assign('exportObjet', $etabs); // Permet de verifier si la personne a la preference d'affichage des cartes. $this->view->assign('hasPrefCarte', $user->checkPref('cartes')); $this->view->assign('listeEtablissement', $infos); } /** * Affichage des établissements sur une carte (Google Maps) */ public function carteAction() { $siren = substr($this->siret,0,9); $actif = $this->getRequest()->getParam('actif', -1); $session = new SessionEntreprise($this->siret, $this->id); $user = new Scores_Utilisateur(); $ws = new WsScores(); $infos = $ws->getListeEtablissements($siren, $actif); if ($infos === false) $this->_forward('soap', 'error'); $etabs = $infos->result->item; $marqueurs = array(); $j = 0; foreach ($etabs as $i => $etab) { if ($etab->Siege == 1) { $type = 'Siège '; } else { $type = 'Etablissement '; } if ($etab->Actif == 1) { $type .= 'actif'; } else { $type .= 'inactif'; } $type .= ' - '.$etab->NafEtabLib; $titre = "$siren ".$etab->Nic." : $type
"; if ($etab->Enseigne <> '') { $titre .= 'Enseigne : '.$etab->Enseigne.'
'; } $texte = ''; $texte .= 'Etablissement : '.$etab->Nic.'
'; $texte .= $etab->Adresse.'
'; $adresse = $etab->Adresse.' '; if ($etab->Adresse2 <> '') { $texte .= $etab->Adresse2.'
'; if (strlen(trim($adresse)) < 7) { $adresse = $etab->Adresse2.' '; } } $texte.=''.$etab->CP.' '.$etab->Ville.'
'; require_once 'Scores/classMMap.php'; $mmap = new MMap($adresse, $etab->CP, $etab->Ville); if ($mmap->latitudeDec == '') { continue; } $photo = 'http://cbk0.google.com/cbk?output=thumbnail&w=150&h=69&ll='. $mmap->latitudeDec.','. $mmap->longitudeDec; $adresse .= $etab->CP.' '.$etab->Ville; $google_map = 'http://maps.google.fr/maps?q='.urlencode($adresse); $texte .= ''; if ($mmap->precision >= 7 && @fopen($photo, 'r') != false) { $texte .= ''; } else { $texte .= 'Afficher l\'adresse sur Google Map ©'; } $texte .= ''; $texte .= '
'; $texte .= ''.$etab->NafEtab.' : '.$etab->NafEtabLib.''; $icone = 'http://'.$_SERVER['SERVER_NAME'].'/themes/default/images/maps/'.$this->iconeDuMarqueur($etab->NafEtab, $etab->Siege, $etab->Actif); $marqueurs[$j] = array($mmap->latitudeDec, $mmap->longitudeDec, $titre, $texte, $type, $icone); ++$j; // if ($j >= 30) { // Limitation du nombre d'etablissements sur la carte // break; // } } if (count($marqueurs) > 1) { $min_x = $max_x = $marqueurs[0][0]; $min_y = $max_y = $marqueurs[0][1]; for ($i = 1; $i < count($marqueurs); ++$i) { $min_x = min($min_x, $marqueurs[$i][0]); $max_x = max($max_x, $marqueurs[$i][0]); $min_y = min($min_y, $marqueurs[$i][1]); $max_y = max($max_y, $marqueurs[$i][1]); } } $this->view->assign('marqueurs', $marqueurs); $this->view->assign('min_x', $min_x); $this->view->assign('max_x', $max_x); $this->view->assign('min_y', $min_y); $this->view->assign('max_y', $max_y); } protected function iconeDuMarqueur($naf, $siege, $actif) { if ($siege == 1) { return 'siege'.$actif.'.png'; } switch (substr($naf, 0, 2)) { // A Agriculture, sylviculture et pêche case '01': // Culture et production animale, chasse et services annexes case '02': // Sylviculture et exploitation forestière case '03': // Pêche et aquaculture return 'tractor'.$actif.'.png'; // B Industries extractives case '05': // Extraction de houille et de lignite case '06': // Extraction d'hydrocarbures case '07': // Extraction de minerais métalliques case '08': // Aures industries extractives case '09': // Services de soutien aux industries extractives // C Industrie manufacturière case '10': // Industries alimentaires case '11': // Fabrication de boissons case '12': // Fabrication de produits à base de tabac case '13': // Fabrication de textiles case '14': // Industrie de l'habillement case '15': // Industrie du cuir et de la chaussure case '16': // Travail du bois et fabrication d'articles en bois... case '17': // Industrie du papier et du carton case '18': // Imprimerie et reproduction d'enregistrements case '19': // Cokéfaction et raffinage case '20': // Industrie chimique case '21': // Industrie pharmaceutique case '22': // Fabrication de produits en caoutchouc et en plastique case '23': // Fabrication d'autres produits minéraux non métalliques case '24': // Métallurgie case '25': // Fabrication de produits métalliques... case '26': // Fabrication de produits informatiques... case '27': // Fabrication d'équipements électriques case '28': // Fabrication de machines et équipements n.c.a. case '29': // Industrie automobile case '30': // Fabrication d'autres matériels de transport case '31': // Fabrication de meubles case '32': // Autres industries manufacturières case '33': // Réparation et installation de machines et d'équipements // D Production et distribution d'électricité, de gaz, de vapeur... case '35': // Production et distribution d'électricité, de gaz... // E Production et distribution d'eau ; assainissement... case '36': // Captage, traitement et distribution d'eau case '37': // Collecte et traitement des eaux usées case '38': // Collecte, traitement et élimination des déchets... case '39': // Dépollution et autres services de gestion des déchets // F Construction case '41': // Construction de bâtiments case '42': // Génie civil case '43': // Travaux de construction spécialisés return 'usine'.$actif.'.png'; // G Commerce ; réparation d'automobiles et de motocycles case '45': // Commerce et réparation d'automobiles et de motocycles case '46': // Commerce de gros, à l'exception des automobiles... case '47': // Commerce de détail, à l'exception des automobiles... return 'shop'.$actif.'.png'; // H Transports et entreposage case '49': // Transports terrestres et transport par conduites case '50': // Transports par eau case '51': // Transports aériens case '53': // Activités de poste et de courrier return 'etab'.$actif.'.png'; case '52': // Entreposage et services auxiliaires des transports return 'entrepot'.$actif.'.png'; // I Hébergement et restauration case '55': // Hébergement case '56': // Restauration // J Information et communication case '58': // Édition case '59': // Production de films cinématographiques, de vidéo... case '60': // Programmation et diffusion case '61': // Télécommunications case '62': // Programmation, conseil et autres activités informatiques case '63': // Services d'information // K Activités financières et d'assurance case '64': // Activités des services financiers, hors assurance... case '65': // Assurance case '66': // Activités auxiliaires de services financiers et d'assurance // L Activités immobilières case '68': // Activités immobilières // M Activités spécialisées, scientifiques et techniques case '69': // Activités juridiques et comptables case '70': // Activités des sièges sociaux ; conseil de gestion case '71': // Activités d'architecture et d'ingénierie... case '72': // Recherche-développement scientifique case '73': // Publicité et études de marché case '74': // Autres activités spécialisées, scientifiques et techniques case '75': // Activités vétérinaires // N Activités de services administratifs et de soutien case '77': // Activités de location et location-bail case '78': // Activités liées à l'emploi case '79': // Activités des agences de voyage, voyagistes... case '80': // Enquêtes et sécurité case '81': // Services relatifs aux bâtiments et aménagement paysager case '82': // Activités administratives et autres activités de soutien... return 'etab'.$actif.'.png'; // O Administration publique case '84': // Administration publique et défense ; sécurité sociale... // P Enseignement case '85': // Enseignement return 'admin'.$actif.'.png'; // Q Santé humaine et action sociale case '86': // Activités pour la santé humaine case '87': // Hébergement médico-social et social case '88': // Action sociale sans hébergement // R Arts, spectacles et activités récréatives case '90': // Activités créatives, artistiques et de spectacle case '91': // Bibliothèques, archives, musées... case '92': // Organisation de jeux de hasard et d'argent case '93': // Activités sportives, récréatives et de loisirs // S Autres activités de services case '94': // Activités des organisations associatives case '95': // Réparation d'ordinateurs et de biens personnels... case '96': // Autres services personnels // T Activités des ménages en tant qu'employeurs... case '97': // Activités des ménages en tant qu'employeurs de personnel... case '98': // Activités indifférenciées des ménages... // U Activités extra-territoriales case '99': // Activités des organisations et organismes extraterritoriaux return 'etab'.$actif.'.png'; } } /** * Affichage des liens inter-entreprise */ public function liensAction() { $nbMonthForRecentLien = 3; $request = $this->getRequest(); $lienRef = $request->getParam('lienref', null); $user = new Scores_Utilisateur(); $this->view->assign('edition', $user->checkModeEdition()); $ws = new WsScores(); if ($lienRef) { $this->view->assign('lienref', $lienRef); $this->view->headTitle()->append('Liens inter-entreprises - Id '.$lienRef); $identite = $ws->getLienRef($lienRef); $this->view->assign('raisonSociale', $identite->raisonSociale); $this->view->assign('identification', $identite->identification); $this->view->assign('actif', $identite->actif); //Define SIREN if exist if ( intval($identite->siren)!=0 ) { $siren = $identite->siren; $session = new SessionEntreprise($siren, null, true); $this->view->assign('siren', $siren); $this->view->assign('siret', $session->getSiret()); $this->view->assign('isin', $session->getIsin()); } Zend_Registry::get('firebug')->info($identite); if ($identite->PpPm=='PP') { $this->view->assign('PP', true); } //Get links $infos = $ws->getLiensById($lienRef); } else { $siren = substr($this->siret,0,9); $this->view->headTitle()->append('Liens inter-entreprises - Siren '.$siren); $session = new SessionEntreprise($this->siret, $this->id); $this->view->assign('isin', $session->getIsin()); $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('raisonSociale', $session->getRaisonSociale()); //Check access to display group link if ( $user->checkPerm('GROUPE') ) { $this->view->assign('liengroupe', $this->view->url(array( 'controller' => 'identite', 'action' => 'groupesarbo', 'siret' => $siren ), null, true) ); } $infos = $ws->getLiens($siren); Zend_Registry::get('firebug')->info($infos); if (is_string($infos) || $infos === false) $this->_forward('soap', 'error'); } if (isset($session)) { //Special legal form, go to other display if ( ($session->getFormeJuridique()>=1000 && $session->getFormeJuridique()<=1999) || ($session->getFormeJuridique()>=10 && $session->getFormeJuridique()<=19) ) { $this->view->assign('PP', true); } if ( in_array($session->getFormeJuridique(), array(5488,5498,5720)) ) { $this->view->assign('FJ1', true); } //Check access to display links to pdf items if ( $user->checkPerm('ACTES') ) { if ( $session->getFormeJuridique()>=3100 && $session->getFormeJuridique()<=3199 || $session->getFormeJuridique()>=4000 && $session->getFormeJuridique()<=4999 || $session->getFormeJuridique()>=5000 && $session->getFormeJuridique()<=5999 || $session->getFormeJuridique()>=6000 && $session->getFormeJuridique()<=6999 ) { $this->view->assign('lienStatuts', $this->view->url(array( 'controller' => 'pieces', 'action' => 'actes', 'siret' => $siren ), null, true) ); $this->view->assign('lienBilans', $this->view->url(array( 'controller' => 'pieces', 'action' => 'bilans', 'siret' => $siren ), null, true) ); } } } $actionnaires = $infos->actionnaires->item; $participations = $infos->participations->item; $directions = $infos->directions->item; $actionnaires = $participations = $directions = array(); if ( $infos->actionnaires->item ) { $actionnaires = $infos->actionnaires->item; } if ( $infos->participations->item ) { $participations = $infos->participations->item; } if ( $infos->directions->item ) { $directions = $infos->directions->item; } $date = new Zend_Date(); $date->sub($nbMonthForRecentLien, Zend_Date::MONTH); $this->view->assign('DateForRecentLien', $date); $this->view->assign('exportObjet', $infos); $this->view->assign('source', $source); $this->view->assign('dateLien', $dateLien); $this->view->assign('dateMaj', $dateMaj); $this->view->assign('actionnaires', $actionnaires); $this->view->assign('participations', $participations); $this->view->assign('directions', $directions); $this->view->assign('AutrePage', $this->getRequest()->getParam('apage')); } public function lienficheAction() { $this->_helper->layout()->disableLayout(); $request = $this->getRequest(); //@todo : $pays = array( 'FRA' => "France", 'AND' => "Andorre", 'ARE' => "Emirats Arabes Unis", 'AFG' => "Afghanistan", 'ATG' => "Antigua", 'AIA' => "Anguilla", 'ALB' => "Albanie", 'ARM' => "Arménie", 'ANT' => "Antilles Néerlandaises", 'AGO' => "Angola", 'ATA' => "Antarctique", 'ARG' => "Argentine", 'ASM' => "Samoa Américaines", 'AUT' => "Autriche", 'AUS' => "Australie", 'ABW' => "Aruba", 'AZE' => "Azerbaïdjan", 'BIH' => "Bosnie-Herzégovine", 'BRB' => "Barbade", 'BGD' => "Bangladesh", 'BEL' => "Belgique", 'BFA' => "Burkina Faso", 'BGR' => "Bulgarie", 'BHR' => "Bahreïn", 'BDI' => "Burundi", 'BEN' => "Bénin", 'BMU' => "Bermudes", 'BRN' => "Brunei", 'BOL' => "Bolivie", 'BRA' => "Brésil", 'BHS' => "Bahamas", 'BTN' => "Bhoutan", 'BVT' => "Iles Bouvet", 'BWA' => "Botswana", 'BLR' => "Biélorussie", 'BLZ' => "Bélize", 'CAN' => "Canada", 'CCK' => "Iles Cocos", 'CAF' => "République Centrafricaine", 'COG' => "Congo", 'CHE' => "Suisse", 'CIV' => "Côte d\'Ivoire", 'COK' => "Iles Cook", 'CHL' => "Chili", 'CMR' => "Cameroun", 'CHN' => "Chine", 'COL' => "Colombie", 'CRI' => "Costa Rica", 'CSK' => "Tchécoslovaquie", 'CUB' => "Cuba", 'CPV' => "Cap-Vert", 'CXR' => "Ile Christmas", 'CYP' => "Chypre", 'CZE' => "Rébublique Tchèque", 'DDR' => "République Démocratique Allemande", 'DEU' => "Allemagne", 'DJI' => "Djibouti", 'DNK' => "Danemark", 'DMA' => "Dominique", 'DOM' => "République Dominicaine", 'DZA' => "Algérie", 'ECU' => "Equateur", 'EST' => "Estonie", 'EGY' => "Egypte", 'ESH' => "Sahara Occidental", 'ERI' => "Eritrea", 'ESP' => "Espagne", 'ETH' => "Ethiopie", 'FIN' => "Finlande", 'FJI' => "Iles Fidji", 'FLK' => "Iles Malouines", 'FSM' => "Etats Fédérés de Micronésie", 'FRO' => "Iles Féroé", 'GAB' => "Gabon", 'GBR' => "Royaume-Uni", 'GRD' => "Grenade", 'GEO' => "Géorgie", 'GUF' => "Guinée française", 'GHA' => "Ghana", 'GIB' => "Gibraltar", 'GRL' => "Groënland", 'GMB' => "Gambie", 'GIN' => "Guinée", 'GLP' => "Guadeloupe", 'GNQ' => "Guinée Equatoriale", 'GRC' => "Grèce", 'SGS' => "Géorgie du sud & Iles Sandwich", 'GTM' => "Guatemala", 'GUM' => "Guam", 'GNB' => "Guinée-Bissau", 'GUY' => "Guyane", 'HKG' => "Hong Kong", 'HMD' => "Iles Heard et Mc Donald", 'HND' => "Honduras", 'HRV' => "Croatie", 'HTI' => "Haïti", 'HUN' => "Hongrie", 'IDN' => "Indonésie", 'IRL' => "Irlande", 'ISR' => "Israël", 'IND' => "Inde", 'IOT' => "Iles Vierges Britanniques", 'IRQ' => "Irak", 'IRN' => "Iran", 'ISL' => "Islande", 'ITA' => "Italie", 'JAM' => "Jamaïque", 'JOR' => "Jordanie", 'JPN' => "Japon", 'KEN' => "Kenya", 'KGZ' => "Kirghizistan", 'KHM' => "Cambodge", 'KIR' => "Kiribati", 'COM' => "Comores", 'KNA' => "Saint-Kitts", 'PRK' => "Corée", 'KOR' => "République de Corée", 'KWT' => "Koweït", 'CYM' => "Iles Caïman", 'KAZ' => "Kazakhstan", 'LAO' => "Laos", 'LBN' => "Liban", 'LCA' => "Sainte-Lucie", 'LIE' => "Liechtenstein", 'LKA' => "Sri Lanka", 'LBR' => "Libéria", 'LSO' => "Lesotho", 'LTU' => "Lithuanie", 'LUX' => "Luxembourg", 'LVA' => "Lettonie", 'LBY' => "Libye", 'MAR' => "Maroc", 'MCO' => "Monaco", 'MDA' => "Moldavie", 'MDG' => "Madagascar", 'MHL' => "Iles Marshall", 'MKD' => "Macédoine", 'MLI' => "Mali", 'MMR' => "Myanmar", 'MNG' => "Mongolie", 'MAC' => "Macao", 'MNP' => "Iles Mariannes", 'MTQ' => "Martinique", 'MRT' => "Mauritanie", 'MSR' => "Montserrat", 'MLT' => "Malte", 'MUS' => "Ile Maurice", 'MDV' => "Maldives", 'MWI' => "Malawi", 'MEX' => "Mexique", 'MYS' => "Malaisie", 'MOZ' => "Mozambique", 'NAM' => "Namibie", 'NCL' => "Nouvelle Calédonie", 'NER' => "Niger", 'NFK' => "Iles Norfolk", 'NGA' => "Nigeria", 'NIC' => "Nicaragua", 'NLD' => "Pays-Bas", 'NOR' => "Norvège", 'NPL' => "Népal", 'NRU' => "Nauru", 'NTZ' => "Zone Neutre", 'NIU' => "Niue", 'NZL' => "Nouvelle Zélande", 'OMN' => "Oman", 'PAN' => "Panama", 'PER' => "Pérou", 'PYF' => "Polynésie Francaise", 'PNG' => "Papouasie Nouvelle-Guinée", 'PHL' => "Philippines", 'PAK' => "Pakistan", 'POL' => "Pologne", 'SPM' => "Saint Pierre et Miquelon", 'PCN' => "Pitcairn", 'PRI' => "Porto Rico", 'PRT' => "Portugal", 'PLW' => "Palau", 'PRY' => "Paraguay", 'QAT' => "Qatar", 'REU' => "Ile de la Réunion", 'ROM' => "Roumanie", 'RUS' => "Russie", 'RWA' => "Rwanda", 'SAU' => "Arabie Saoudite", 'SLB' => "Iles Salomon", 'SYC' => "Seychelles", 'SDN' => "Soudan", 'SWE' => "Suède", 'SGP' => "Singapour", 'SHN' => "Sainte-Hélène", 'SVN' => "Slovénie", 'SJM' => "Spitsberg et lle Jan Mayen", 'SVK' => "Slovaquie", 'SLE' => "Sierra Leone", 'SMR' => "Saint-Marin", 'SEN' => "Sénégal", 'SOM' => "Somalie", 'SUR' => "Surinam", 'STP' => "São Tomé et Principe", 'SUN' => "URSS", 'SLV' => "Salvador", 'SYR' => "Syrie", 'SWZ' => "Swaziland", 'TCA' => "Iles Turques et Caïques", 'TCD' => "Tchad", 'ATF' => "Terres Australes Francaises", 'TGO' => "Togo", 'THA' => "Thaïlande", 'TJK' => "Tadjikistan", 'TKL' => "Iles Tokélaou", 'TKM' => "Turkménistan", 'TUN' => "Tunisie", 'TON' => "Tonga", 'TMP' => "Timor Oriental", 'TUR' => "Turquie", 'TTO' => "Trinité-et-Tobago", 'TUV' => "Tuvalu", 'TWN' => "Taïwan, République de Chine", 'TZA' => "Tanzanie", 'UKR' => "Ukraine", 'UGA' => "Ouganda", 'UMI' => "Iles mineures éloignées des E.U", 'USA' => "Etats Unis", 'URY' => "Uruguay", 'UZB' => "Ouzbékistan", 'VAT' => "Vatican", 'VCT' => "Saint Vincent et les Grenadines", 'VEN' => "Vénézuéla", 'VGB' => "Iles Vierges Britaniques", 'VIR' => "Iles Vierges U.S", 'VNM' => "Vietnam", 'VUT' => "Vanuatu", 'WLF' => "Wallis et Futuna", 'WSM' => "Samoa Américaines", 'XBA' => "Rép. Turque de Chypre", 'YMD' => "Yémen (République Démocratique)", 'YEM' => "Yemen", 'MYT' => "Mayotte", 'YUG' => "Yougoslavie", 'ZAF' => "Afrique du sud", 'ZMB' => "Zambie", 'ZAR' => "Zaïre", 'ZWE' => "Zimbabwe"); $this->view->assign('countries', $pays); $user = new Scores_Utilisateur(); $this->view->assign('edition', $user->checkModeEdition()); $id = $request->getParam('idFiche'); $this->view->assign('idFiche', $id); $ws = new WsScores(); $result = $ws->getLienRef($id); Zend_Registry::get('firebug')->info($result); $this->view->assign('result', $result); } public function liendocAction() { $request = $this->getRequest(); $type = $request->getParam('type'); $id = $request->getParam('id'); if ( $type == 'Lien' ) { $this->_helper->layout()->disableLayout(); } $ws = new WsScores(); $docs = $ws->getLienDoc($id, $type); $this->view->assign('docs', $docs->item); } /** * Affichage des modifications Insee */ public function evenementsAction() { $siren = substr($this->siret,0,9); $this->view->headTitle()->append('Evènements - Siren '.$siren); $session = new SessionEntreprise($this->siret, $this->id); $ws = new WsScores(); $infos = $ws->getListeEvenements($siren); $evens = $infos->result->item; $this->view->assign('siren', $siren); $this->view->assign('siret', $this->siret); $this->view->assign('id', $this->id); $this->view->assign('raisonSociale', $session->getRaisonSociale()); $this->view->assign('evens', $evens); $this->view->assign('exportObjet', $evens); } /** * Affichage des news */ public function newsAction() { $googleNews = true; $nbNews = 15; $user = new Scores_Utilisateur(); if ($user->checkPref('news')) { $session = new SessionEntreprise($this->siret, $this->id); $items = array(); if ($googleNews!==false){ $url = 'http://news.google.fr/news?hl=fr&gl=fr&q='. urlencode($session->getRaisonSociale()).'&output=rss'; $items = array(); try { $canal = new Zend_Feed_Rss($url); } catch (Exception $e) { //Do nothing } if (count($canal)>0) { $i=0; foreach ($canal as $element) { $items[] = $element; $i++; if ($i==$nbNews) break; } } } $this->view->assign('items', $items); } else { $this->view->assign('disable', true); } } /** * Téléchargement d'un avis de situation */ public function avisAction() { $this->_helper->layout()->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); // ==> Start require_once 'Scores/AvisSituation.php'; $avis = new AvisSituation($this->siret); if (!$avis->erreur()){ $avis->erreurcpt('raz'); $body = $avis->get('pdf', 1); if($body !== false) { header("Pragma: public"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: must-revalidate"); header("Content-type: application/pdf"); header("Content-Length: ".strlen($body)); header('Content-disposition: inline; filename="avis-'.$this->siret.'.pdf"'); header("Accept-Ranges: ".strlen($body)); echo $body; $ws = new WsScores(); $ws->setLog('avis_situation', $this->siret, 0, ''); } else { $avis->erreurcpt('plus'); echo $avis->erreurmsg(); } } else { if ($avis->nberreur()==5){ $avis->mailerreur(); } $avis->erreurcpt('plus'); echo $avis->erreurmsg(); } } public function irisAction() { $this->_helper->layout()->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); $request = $this->getRequest(); $codeCommune = $request->getParam('code'); // ==> Start require_once 'Scores/Iris.php'; $iris = new Iris($codeCommune); $body = $iris->get('pdf'); if($body !== false) { header("Pragma: public"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: must-revalidate"); header("Content-type: application/pdf"); header("Content-Length: ".strlen($body)); header('Content-disposition: inline; filename="carte_iris_'.$codeCommune.'.pdf"'); header("Accept-Ranges: ".strlen($body)); echo $body; } else { echo $iris->erreur(); } } public function geoAction() { $infos = $this->getRequest()->getParam('infos'); $user = new Scores_Utilisateur(); $this->view->assign('facade', $user->checkPref('mappy')); require_once 'Scores/Google.php'; $google = new Google(); $decLat = $google->dec2dms($infos->GeoLat); $decLon = $google->dec2dms($infos->GeoLon); $mapsHref = $google->getGoogleMapLink(urlencode( $infos->AdresseNum.', '.$infos->AdresseVoie.' '. htmlspecialchars_decode($infos->AdresseRue, ENT_QUOTES). ', '.$infos->CP.' '.$infos->Ville)); $this->view->assign('mapsHref', $mapsHref); $this->view->assign('decLat', $decLat); $this->view->assign('decLon', $decLon); $this->view->assign('infos', $infos); } public function facadeAction() { require_once 'Scores/Mappy.php'; $infos = $this->getRequest()->getParam('infos'); $mappy = new Mappy(); if ($mappy->villeCouverte($infos->Ville)) { $adresse = ''; $adresse.= $infos->AdresseNum; //Corriger la voie pour Mappy $adresse.= ' '.strtr($infos->AdresseVoie, array( 'R' => 'RUE', 'AV' => 'AVENUE', 'RLE' => 'RUELLE', )); $adresse.= ' '.$infos->AdresseRue; $adresse.= ' '.$infos->Ville; //Définir le pays if ($infos->Pays == '') { $adresse.= ' FRANCE'; } else { $adresse.= ' '.$infos->Pays; } $this->view->assign('adresse', $adresse); $this->view->assign('source', 'mappy'); $this->view->assign('lienJs', $mappy->getJs()); } else { require_once 'Scores/Google.php'; $google = new Google(); $googleKey = $google->getGoogleKey($_SERVER['SERVER_NAME']); $this->view->assign('googleKey', $googleKey); $this->view->assign('source', 'google'); $this->view->assign('infos', $infos); } } public function groupesarboAction() { $this->_helper->layout()->disableLayout(); $siren = substr($this->siret,0,9); $this->view->assign('siret', $siren); $request = $this->getRequest(); $pctMin = $request->getParam('pctMin', 33); $this->view->assign('pctMin', $pctMin); $user = new Scores_Utilisateur(); $this->view->assign('edition', $user->checkModeEdition()); $ws = new WsScores(); $result = $ws->getGroupesArbo($siren, $pctMin); if ( $result!==false ) { $infos = json_decode($result, true); Zend_Registry::get('firebug')->info($infos); if (count($infos)>0) { $name = $infos['name']; if ( $infos['siren']!='000000000' ) { $name.= ' ('.$infos['siren'].')'; } $structure = array(); $structure[] = array( 'data' => $name, 'state' => 'open', 'children' => $this->groupesArboChildren($infos['children'], $siren), ); $this->view->assign('data', json_encode($structure)); } } } public function groupesArboChildren($items, $detectSiren = '') { $output = array(); if ( count($items)>0 ) { foreach ( $items as $item ) { $name = $item['name']; if ( intval($item['siren'])!=0 ) { $name.= ' ('.$item['siren'].')'; } else { $name.= ' ('.$item['pays'].')'; } $name.= ' - '.$item['pmin'].'%'; $structure = array( 'data' => $name, 'state' => 'open', ); if ($item['siren']==$detectSiren) { $structure['class'] = 'jstree-search'; } if (count($item['children'])>0){ $structure['children'] = $this->groupesArboChildren($item['children'], $detectSiren); } else { $structure['children'] = array(); } $output[] = $structure; } } return $output; } public function groupeAction() { $siren = substr($this->siret,0,9); $ws = new WsScores(); $result = $ws->getGroupeInfos($siren); $this->view->assign('result', $result); $this->view->assign('siren', $siren); } }