454 lines
13 KiB
PHP
454 lines
13 KiB
PHP
<?php
|
|
class IdentiteController extends Zend_Controller_Action
|
|
{
|
|
protected $siret = null;
|
|
protected $id = 0;
|
|
|
|
public function init()
|
|
{
|
|
$request = $this->getRequest();
|
|
$this->siret = $request->getParam('siret');
|
|
$this->id = $request->getParam('id', 0);
|
|
|
|
require_once 'Scores/WsScores.php';
|
|
require_once 'Scores/Utilisateur.php';
|
|
require_once 'Scores/SessionEntreprise.php';
|
|
require_once 'Scores/IdentiteEntreprise.php';
|
|
require_once 'common/dates.php';
|
|
require_once 'Graphique/Graphique.lib.php';
|
|
|
|
$this->view->headLink()->appendStylesheet('/themes/default/styles/identite.css', 'all');
|
|
}
|
|
|
|
/**
|
|
* Renvoi vers la fiche
|
|
*/
|
|
public function indexAction()
|
|
{
|
|
$this->_forward('fiche', 'identite');
|
|
}
|
|
|
|
/**
|
|
* Affichage de la fiche identité
|
|
*/
|
|
public function ficheAction()
|
|
{
|
|
$this->view->headScript()->appendFile('/themes/default/scripts/identite.js', 'text/javascript');
|
|
$session = new Zend_Session_Namespace('Historique');
|
|
|
|
//Modification du titre
|
|
if(empty($this->siret)){
|
|
$titre = 'Identifiant '.$this->id;
|
|
} else {
|
|
$titre = 'Siret '.$this->siret;
|
|
}
|
|
$this->view->headTitle()->append('Identité - '.$titre);
|
|
|
|
$user = new 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');
|
|
}
|
|
|
|
//Mise en session
|
|
$session = new SessionEntreprise($this->siret, $this->id);
|
|
$session->setInfoEntrep($infos);
|
|
|
|
//Date de dernière mise à jour
|
|
$tabDate = array(
|
|
'DateMajINSEE' => "Insee : ",
|
|
'DateMajRCS' => "RCS : ",
|
|
'DateMajBILAN' => "Bilans : ",
|
|
'DateMajANN' => "Annonces : ",
|
|
);
|
|
$datemajTexte = '';
|
|
foreach ( $tabDate as $dateId => $dateLib ) {
|
|
if (isset($infos->{$dateId}) && !empty($infos->{$dateId}) && $infos->{$dateId}!='0000-00-00') {
|
|
$datemajTexte.= $dateLib;
|
|
$datemajTexte.= WDate::dateT('Y-m-d', 'd/m/Y', $infos->{$dateId});
|
|
$datemajTexte.= '<br/>';
|
|
}
|
|
}
|
|
$dateDerMaj = '';
|
|
if (isset($infos->DateMajID) && !empty($infos->DateMajID) && $infos->DateMajID!='0000-00-00' ){
|
|
if ( $user->checkModeEdition() ){
|
|
$datemajTexte.= "Scores & Décisions : ";
|
|
$datemajTexte.= WDate::dateT('Y-m-d', 'd/m/Y', $infos->DateMajID);
|
|
$datemajTexte.= '<br/>';
|
|
}
|
|
$dateDerMaj = ' le '.WDate::dateT('Y-m-d', 'd/m/Y', $infos->DateMajID);
|
|
}
|
|
|
|
$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 = 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(),
|
|
);
|
|
|
|
$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);
|
|
|
|
$this->view->assign('AutrePage', $this->getRequest()->getParam('apage'));
|
|
}
|
|
|
|
/**
|
|
* Affichage de la fiche procédure collective
|
|
* Enter description here ...
|
|
*/
|
|
public function fichepcAction()
|
|
{
|
|
//Vérification des permission
|
|
$user = new Utilisateur();
|
|
if(!$user->checkPerm('idprocol')){
|
|
$this->_forward('perm', '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 Utilisateur();
|
|
|
|
$ws = new WsScores();
|
|
$infos = $ws->getListeEtablissements($siren, $actif);
|
|
if ($infos === false) $this->_forward('soap', 'error');
|
|
|
|
$etabs = $infos->result->item;
|
|
|
|
$this->view->assign('siren', $siren);
|
|
$this->view->assign('siret', $this->siret);
|
|
$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', true);
|
|
$this->view->assign('listeEtablissement', $infos);
|
|
}
|
|
|
|
/**
|
|
* Affichage des liens inter-entreprise
|
|
*/
|
|
public function liensAction()
|
|
{
|
|
$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('siren', $siren);
|
|
$this->view->assign('siret', $this->siret);
|
|
$this->view->assign('raisonSociale', $session->getRaisonSociale());
|
|
|
|
Zend_Registry::get('firebug')->info($_SESSION);
|
|
|
|
|
|
if ( ($session->getFormeJuridique()>=1000 && $session->getFormeJuridique()<=1999)
|
|
|| ($session->getFormeJuridique()>=10 && $session->getFormeJuridique()<=19) ) {
|
|
$this->renderScript('identite/liens-personne-physique.phtml');
|
|
}
|
|
|
|
require_once 'Scores/WsScores.php';
|
|
$ws = new WsScores();
|
|
$infos = $ws->getLiens($siren);
|
|
|
|
$actionnaires = $infos->actionnaires->item;
|
|
$participations = $infos->participations->item;
|
|
|
|
//Informations de MAJ
|
|
if(count($actionnaires)>0){
|
|
$nb = count($actionnaires)-1;
|
|
$source = $actionnaires[$nb]->Source;
|
|
$dateMaj = $actionnaires[$nb]->DateMaj;
|
|
} else if (count($participations)>0){
|
|
$nb = count($participations)-1;
|
|
$source = $participations[$nb]->Source;
|
|
$dateMaj = $participations[$nb]->DateMaj;
|
|
} else {
|
|
$source = '';
|
|
$dateLien = '';
|
|
$dateMaj = '';
|
|
}
|
|
self::GraphiqueParticipation($participations, $siren);
|
|
|
|
$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('AutrePage', $this->getRequest()->getParam('apage'));
|
|
}
|
|
|
|
/**
|
|
* 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);
|
|
|
|
require_once 'Scores/WsScores.php';
|
|
$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()
|
|
{
|
|
$nbNews = 15;
|
|
|
|
$session = new SessionEntreprise($this->siret, $this->id);
|
|
|
|
$url = 'http://news.google.fr/news?hl=fr&ned=fr&q='.
|
|
urlencode('"'.$session->getRaisonSociale().'"').'&output=rss';
|
|
|
|
define('MAGPIE_CACHE_ON', false);
|
|
define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');
|
|
define('MAGPIE_INPUT_ENCODING', 'UTF-8');
|
|
define('MAGPIE_DETECT_ENCODING', false);
|
|
require_once ('Vendors/magpierss/rss_fetch.inc');
|
|
$rss = fetch_rss($url);
|
|
$items = array_slice($rss->items, 0, 15);
|
|
|
|
$this->view->assign('items', $items);
|
|
}
|
|
|
|
/**
|
|
* 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();
|
|
}
|
|
}
|
|
} |